DS80C400 Maxim, DS80C400 Datasheet - Page 74

no-image

DS80C400

Manufacturer Part Number
DS80C400
Description
The DS80C400 network microcontroller offers the highest integration available in an 8051 device
Manufacturer
Maxim
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
DS80C400
Manufacturer:
DALLAS
Quantity:
748
Part Number:
DS80C400-FNY
Manufacturer:
DALLAS
Quantity:
85
Part Number:
DS80C400-FNY
Manufacturer:
Maxim Integrated
Quantity:
10 000
Part Number:
DS80C400-FNY+
Manufacturer:
TDK-Lambda
Quantity:
34
Part Number:
DS80C400-FNY+
Manufacturer:
Maxim
Quantity:
3 861
Part Number:
DS80C400-FNY+
Manufacturer:
Maxim Integrated
Quantity:
10 000
Part Number:
DS80C400-FNY+
Manufacturer:
MAXI/DALLAS
Quantity:
20 000
Now armed with an IP address and TFTP server IP address, the DS80C400 tries to find code to be loaded into
external program memory. The ROM first requests to read the file from the TFTP server coinciding with its unique
physical MAC address (e.g., 006035AB9811). If the request is denied, it issues a second, less specific, request to
read the filename associated with the DS80C400 ROM revision (e.g. TINI400-1.0.1). If this request is denied, then
lastly it attempts to read from the TFTP server the file ‘TINI400.’ Using this strategy, the TFTP server operator can
distinguish between different devices and/or different releases of the DS80C400 ROM firmware.
After successfully locating the desired file on the TFTP server, the DS80C400 must transfer and program the file
into external memory. Currently, the DS80C400 only offers programming support for SRAM and AMD compatible
flash memory devices. The NetBoot code expects the transferred file to be in the Maxim tbin2 format. The tbin2
format consists of one or more records, allowing binary concatenation of multiple images into one file.
illustrates the tbin2 file format.
For each 64kB bank to be programmed, the ROM first performs a CRC-16 of the current memory bank contents. If
the CRC-16 of the current memory matches the data to be programmed, the bank is left alone. If the CRC-16
differs, it performs a couple of write/read-back operations to assess whether the bank is flash or SRAM and then
executes the erasure (if flash) and programming.
After completion of the TFTP server file transfer and programming of external memory, the NetBoot process
concludes by updating a ‘previous TFTP success’ flag and executing the ROM find-user-code routine.
If either DHCP or the TFTP transfer fail, the NetBoot code checks whether the TFTP transfer has been successful
in a previous attempt. (Note that this feature requires cooperation by the user application.) If so, the DS80C400
ROM exits NetBoot and transfers execution to the find-user-code routine. If the TFTP transfer has not been
successful in the past, the DS80C400 ROM allows the watchdog timer to reset the DS80C400.
Figure 16. Maxim tbin2 Record and File Format
Find-User Code
The DS80C400 ROM firmware attempts to find valid user code by searching for specific signature bytes at the
beginning of each 64kB block of memory. The search begins at address location C00000h and continues
downward through memory in decrements of 64kB until executable code is located or failure occurs (search
terminates at 000000h). For the find-user-code routine to judge a block of memory as valid executable code, it
must be tagged with the signature bytes shown in
tbin2 record
tbin2 record
tbin2 record
tbin2 record
tbin2 record
tbin2 file
.
.
.
VERSION
FIELD
Version:
Target Address:
Length-1:
CRC-16:
Figure
74 of 97
TARGET ADDRESS (3)
17.
FORMAT (NOTES)
01h (versions other than 01h reserved for future use)
LSB, MSB, XSB (target addresses > FF0000h reserved)
LSB, MSB
LSB, MSB
BINARY DATA (LENGTH)
tbin2 record
LENGTH-1 (2)
CRC-16 (2)
Figure 16

Related parts for DS80C400