Bios Dimm520
Bios Dimm520
Bios Dimm520
DIMM-520
User's Manual
Insyde Software BIOS for the DIMM-520, User's Manual
Copyright 2002:
FS FORTH-SYSTEME GmbH
Postfach 1103, D-79200 Breisach a. Rh., Germany
All rights reserved. No part of this document may be copied or reproduced in any
form or by any means without the prior written consent of FS FORTH-SYSTEME
GmbH.
2 BIOS_DIMM520.DOC
Insyde Software BIOS for the DIMM-520, User's Manual
Contents
1. General ...............................................................................................................4
1.1. Features ...................................................................................................4
4. Remote Features..............................................................................................14
4.1. The Remote Server REMHOST.EXE ....................................................15
4.2. Cable Definition......................................................................................16
4.3. Restrictions ............................................................................................18
BIOS_DIMM520.DOC 3
Insyde Software BIOS for the DIMM-520, User's Manual
1. General
1.1. Features
4 BIOS_DIMM520.DOC
Insyde Software BIOS for the DIMM-520, User's Manual
2. BIOS Installation
FORTH-SYSTEME provides two methods to program the BIOS into the flash,
the utility BFLASH.EXE for BIOS updates under DOS and the JTAG-Booster for
initial flash programming.
Since the flash device on the DIMM-520 is larger than 1MB, the BIOS needs to
be programmed into two different regions:
For updating the BIOS under DOS, we have added the flashing utility
BFLASH.EXE to this kit. When starting BFLASH without parameters, the
following help screen with all possible functions and options is displayed:
Supported functions:
/P : Program file into flash drive
/R : Read from flash drive into file
/I : Display flash drives information
Supported options:
/UNIT= : Select flash drive
/ERASEALL : Erase all flash chips
/NOERASE : Do not erase before programming
/TOP : Program file on top of flash
/O= : Offset within the flash disk (hex)
/L= : Length of image file
/FO= : File offset (hex)
BIOS_DIMM520.DOC 5
Insyde Software BIOS for the DIMM-520, User's Manual
Before running this utility, make sure that no expanded memory manager such
as EMM386.EXE is installed. Do not switch off or reset the SC520-board while
BFLASH is programming your flash.
The specified file is programmed into the flash memory. The type of flash device
is automatically detected by the software.
Options:
/UNIT=x
Selects a flash disk unit, if more than one exists. On the DIMM-520, there is only
one flash unit, so this switch is not required.
Default: /UNIT=0
/O=xxxx
The programming starts at an offset of xxxx. If the offset is negative, the offset
specifies an address relative to the end of the flash disk.
Default: /O=0
/TOP
The programming starts at the end of the flash unit minus the size of the file
image.
/FO=xxxx
This switch specifies an offset into the image file. The first xxxx bytes of the file
are skipped and not programmed to the flash.
Default: /FO=0
/L=xxxx
The number of bytes to program may be limitited by the /L-option (length).
Without this option, the whole file will be programmed (starting from /FO)
Default: /L=file size
/ERASEALL
6 BIOS_DIMM520.DOC
Insyde Software BIOS for the DIMM-520, User's Manual
Erase the whole flash unit. Without this option, only those blocks will be erased
where new data should be written to.
/NOERASE
This option prevents the flash from being erased.
Examples:
Options:
/UNIT=x
Selects a flash disk unit, if more than one exists. On the DIMM-520, there is only
one flash unit, so this switch is not required.
Default: /UNIT=0
/O=xxxx
Reading starts at an offset of xxxx. If the offset is negative, the offset specifies an
address relative to the end of the flash disk.
Default: /O=0
/L=xxxx
The number of bytes to read may be limitited by the /L-option (length). Without
this option, the whole flash disk will be read (starting from /O=)
Default: /L=size of flash disk
BIOS_DIMM520.DOC 7
Insyde Software BIOS for the DIMM-520, User's Manual
Examples:
Usage: BFLASH /I
BFLASH displays the total size and erase zone size of all flash drives available.
Please refer to the manual “JTAG-Booster for AMD ElanSC520” for detailed
information.
8 BIOS_DIMM520.DOC
Insyde Software BIOS for the DIMM-520, User's Manual
3. Chipset Details
The adapter space at C0000h..DFFFFh is used for PCI BIOS extensions and
ISA bus. The BIOS will automatically provide shadow RAM for extensions and
maps the remaining space for ISA bus.
The ISA bus memory hole is an important feature required for ISA devices, that
map ROM or RAM into the adapter space. Examples for this are ISA network
cards or PCMCIA controllers. BIOS extensions of PCI devices will always be
copied to shadow RAM by the BIOS. They will be copied one after another
behind the VGA BIOS. ISA cards that require ISA memory space should be
configured to use addresses right below E0000h in order to prevent conflicts with
PCI shadow ROM’s.
BIOS_DIMM520.DOC 9
Insyde Software BIOS for the DIMM-520, User's Manual
For AT-compatibility we do not use the second slave interrupt controller of the
AMD ÉlanSC520. Nevertheless, the customer is free to map the second slave
interrupt controller into the system and use the additional 8 interrupt lines. Note
that using these interrupts require special interrupt service routines.
10 BIOS_DIMM520.DOC
Insyde Software BIOS for the DIMM-520, User's Manual
The ISA bus interrupts 7, 9, 10, 11 and 15 may also be used for PCI devices.
The BIOS scans the PCI bus for PCI devices and examines their configuration
space. If devices are requesting interrupts, the BIOS maps interrupt resources to
the PCI bus and disables the corresponding ISA interrupts. So PCI will always
have precedence over ISA interrupts. Eventhough PCI devices may request
more than one interrupt, the PCI bus will only use up to four different interrupts
INTA..D. Interrupts on the PCI bus are shareable. A BIOS user can assign
specific interrupts to INTA..D in setup or let the BIOS automatically decide which
interrupts are free for PCI.
3.3. DMA-Map
BIOS_DIMM520.DOC 11
Insyde Software BIOS for the DIMM-520, User's Manual
The PAR windows are used to build a PC/AT compatible environment. Without
appropriate PAR-Windows, the AMD ÉlanSC520 maps DRAM continuously into
the address space. All memory cycles behind the DRAM are treated as PCI
memory cycles. A PC/AT compatible environment requires 640 KB low memory,
128 kByte at A0000h for video, 128 kByte at C0000h for ISA adapter space and
128 kByte at E0000h for the system BIOS.
I/O below 400h can be configured for either PCI or ISA. All I/O accesses above
400h are treated as PCI cycles. To support a mixture between both bus types,
some PAR windows must be used. Typically PCI I/O is mapped into higher I/O
ranges. The BIOS is responsible to map I/O requests from PCI devices conflict
free into the I/O space. The only exception for this are PCI VGA cards. They can
use fixed I/O addresses for backward compatibility to ISA devices (94, 102,
3B0..3DF, 46E8).
PAR windows can be configured to map PCI memory, but not PCI I/O. Once the
I/O below 400h is configured for ISA, there is no possibility to access PCI I/O.
The InsydeSoftware BIOS looks on the ISA bus if a VGA card is available. If not,
it always maps the I/O space below 400h to PCI in order to support PCI VGA
cards. All remaining I/O space below 400h will be made accessible to ISA I/O by
using several PAR windows.
PAR windows may also be used for chip selects to external devices. To support
such an I/O space, you can simply program another PAR window which overlaps
the existing I/O windows below 400h. Overlapping PAR windows is allowed, the
lower PAR window will always have priority to the higher PAR windows.
The DIMM-520 has no PCI VGA-controller on-board and does not provide the
ability to connect further PCI devices. Therefore, the BIOS always assumes a
setting for ISA VGA cards.
Note, that all PAR-windows used to map ISA I/O or memory are routed to the
unused general purpose chipselect GPCS5. The I/O windows above 400h are
mainly used to support PNPISA cards.
12 BIOS_DIMM520.DOC
Insyde Software BIOS for the DIMM-520, User's Manual
BIOS_DIMM520.DOC 13
Insyde Software BIOS for the DIMM-520, User's Manual
4. Remote Features
These features are of great value when you bring up your own board for the first
time. In embedded systems, typical PC components are often left away to save
costs. A standard BIOS typically would stop and warn the user that devices are
missing. The BIOS has been modified to go on even if there is no keyboard or
display adapter. With the “Embedded Support Kit”, users can almost work with
such machines like they are used to on a standard PC.
The BIOS contains support for both serial and parallel transmission. During
power-up, it automatically detects, if a REMHOST-connection can be established
on the serial or parallel port.
14 BIOS_DIMM520.DOC
Insyde Software BIOS for the DIMM-520, User's Manual
The utility REMHOST is started on the host computer. It listens on the serial or
parallel port for incoming target requests, executes the commands and sends the
output values back.
The user can decide on the host machine in a configuration file, which devices
the target system should redirect. By default, the target assumes to redirect
video and keyboard services.
Within the configuration file, you can add comments with “//”. Instead of using a
real floppy drive, you can also generate image files of floppy disks. Access to
these image files are much faster than to real floppy disks. Additionally, the
image files can be write-protected. So you can build up virtual floppy drives to
initially set up the target’s file system or to start test tools during production.
When video redirection is enabled (option NOVIDEO not active), the BIOS will
skip the initialization of both ISA and PCI VGA cards. The BIOS thereby comes
up much quicker. Using the keyword DUALVIDEO will enable possible VGA
cards as well and display video output on both the real video card and on the
remote machine. This allows hardware engineers to debug vga controller
problems.
The BIOS will not warn for missing keyboards as soon as remote keyboard is
enabled.
BIOS_DIMM520.DOC 15
Insyde Software BIOS for the DIMM-520, User's Manual
You can leave REMHOST by pressing the left SHIFT and STRG keys
simultaneously.
16 BIOS_DIMM520.DOC
Insyde Software BIOS for the DIMM-520, User's Manual
ERROR# 15 − 2 D0
SLCT 13 − 3 D1
PE 12 − 4 D2
ACK# 10 − 5 D3
BUSY 11 − 6 D4
AFDT# 14 − 14 AFDT#
INIT# 16 − 16 INIT#
SLCTIN# 17 − 17 SLCTIN#
STROBE# 1 − 1 STROBE#
GND 25 − 25 GND
BIOS_DIMM520.DOC 17
Insyde Software BIOS for the DIMM-520, User's Manual
4.3. Restrictions
Keep the following restrictions in mind, when using the ESK or writing programs
that should also work with redirection:
• WindowsNT denies direct access to hardware I/O ports. If you plan to use
REMHOST in a WindowsNT environment, an additional software package is
required, that gives access to the specific I/O ports. This software package
can be achieved by FS FORTH-SYSTEME.
• Avoid video calls that uses registers other than AX, BX, CX and DX. To speed
up video output, only these registers will be transferred. The other registers
will be typically used as pointers to data buffers.
• Don’t press Ctrl-Alt-Del, while redirection is active. This will not reboot
your target system, but your host machine!
18 BIOS_DIMM520.DOC
Insyde Software BIOS for the DIMM-520, User's Manual
If the CMOS battery gets low and the CMOS gets destroyed, the BIOS will
program the CMOS with default settings. Especially in embedded systems,
replacing an empty CMOS battery is often impossible.
During power-up the BIOS looks for valid CMOS defaults in the EEPROM. If the
BIOS determines, that someone already saved the defaults to EEPROM, it will
replace the default table in ROM with the defaults from EEPROM.
Only the first 128 bytes of the EEPROM are required to store the CMOS
defaults. The remaining bytes can be used by application programs to store non-
volatile data. The BIOS provides an INT15-interface to read or write to the
EEPROM:
Input:
AX=7700h “read EEPROM”
DX=address offset in EEPROM (80h..7FFh)
Output:
CarryFlag Set=Error (invalid address), Clear=OK
BL=value data read from EEPROM
Input:
AX=7701h “write to EEPROM”
DX=address offset in EEPROM (80h..7FFh)
BL=value data to write into EEPROM
Output:
CarryFlag Set=Error (invalid address), Clear=OK
BIOS_DIMM520.DOC 19
Insyde Software BIOS for the DIMM-520, User's Manual
6. Integrated Flash-File-System
The BIOS provides support for different on-board flash devices connected to
BOOTCS.
The SC520 doesn´t provide a paging mechanism to map pieces of flash into the
real-mode adapter space, so the flash must be accessed in protected mode.
Since only one piece of software (usually the operating system kernel) can enter
protected-mode, accessing the flash disk can result in “general protection
faults”. So the flash disk feature should only be used while the system remains in
pure real-mode. The flash disk allows you to boot an operating system like
WindowsCE from flash.
As soon as the 32 bit environment gets started, the flash disk driver included in
the BIOS should be replaced by an appropriate driver in the 32 bit operating
system.
The flash file system FlashFX from Datalight can be obtained in full source. The
full source package “Porting Kit” allows adaptations for different operating
systems. The following operating systems are currently supported:
DOS, WindowsCE, LINUX, QNX.
The flash disk can be enabled or disabled in setup (Startup/Flash Disk) to
provide compatibility with all operating systems.
When you are booting DOS from the flash disk, do not install HIMEM.SYS or
EMM386.EXE.
The flash disk can be formatted using FXFMT.EXE. Unformatted flash disks will
not be recognized by DOS, so no drive letter will be applied to that drive. When
formatting the flash for the first time, you must use the bios drive number
(80=drive 1, 81=drive 2) to select the flash drive:
FXFMT.EXE 80
Afterwards, the flash disk can be formatted using the drive letter:
FXFMT.EXE C:
20 BIOS_DIMM520.DOC
Insyde Software BIOS for the DIMM-520, User's Manual
7. Quick Power-Up
In some embedded designs, it is desired to get into the operating system as fast
as possible after power-up.
To speed up the boot process, the following features have been included into the
BIOS:
1. When no keyboard is attached and no remote keyboard is activated, the
BIOS no longer waits for the user to enter setup.
2. Immediately before the BIOS boots the operating system, it beeps the
speaker. This can be disabled in setup “Startup/Beep Before Boot”.
BIOS_DIMM520.DOC 21