Destination, Polling interrupts – Sundance SMT148 User Manual
Page 24

Version 1.4
Page 24 of 35
SMT148 User Manual
happen that the microcontroller is not aware of the destination of the data it passes to
the FPGA. If the address sent is 255 (hFF), the interface will fetch the value of a
specific register that can be set by any resource in the system (see destination
register). This register will contain the address of the destination and will be passed
to the switch fabric if required.
In RS232 and RS485 modes, only one byte (the 1
st
byte, LSB) of relevant data is
transferred by 32-bit words. This has no implication on the firmware. However users
who for example write a program to be executed on DSP TIM to receive or transmit
data from/to the microcontroller should bear this in mind!
Destination
The microcontroller can be accessed by any resource connected to the switch fabric.
It offers the option of streaming data over USB, Firewire, RS485 or RS232. The first
32-bit word this node will receive will describe the type of transfer it needs to perform
as well as how much data will be transferred.
Bit31: never ending transfer if 1. This bit must be set to 0 if the microcontroller
interface needs to be dynamically reconnected to another node at some stage.
Bit 30: must be 0
Bit 29 down to 28: Transfer type, RS232=”00”, RS485=”01”, USB=”10”, Firewire=”11”
Bit 23 down to 0: This is the total number of 32-bit words that will be sent to the
microcontroller interface (excluding this word). This gives a maximum transfer length
of 2^26-4 bytes (64Mbytes). When the microcontroller interface has received all data
it expected from the switch fabric it will disconnect itself automatically by sending a
done pulse.
Polling interrupts
The microcontroller is a master over the FPGA. It needs to check regularly what the
status of the different resources inside the microcontroller interface is. Note that a
status request can be performed at any time during a transfer from the
microcontroller to the interface. However a status request during an interface to
microcontroller transfer can only be performed when a 32-bit word transfer is
complete.