next up previous contents
Next: Bilddatenkompressor Up: Auslesen der Bilddaten aus Previous: Speicherorganisation des MBX-Boards

Programmieren des Memory-Controllers

Um das SRAM auf der Adapterplatine auszulesen, muss der Memory-Controller entsprechend programmiert werden. Das SRAM hat die gleiche Größe wie das entfernte Flash (512 KByte). Deshalb muss an der Speicheradressenbelegung des MBX-Boards nichts geändert werden. Der Memory-Controller wird im Folgenden so programmiert, dass bei einem Lese- oder Schreibzugriff auf den Speicherbereich des entfernten Flash nun das SRAM bzw. das FPGA auf der Adapterplatine angesprochen wird.
Dazu müssen die BR7- und OR7-Register programmiert werden, die der CS7-Leitung zugewiesen sind. Dies geschieht durch folgende Zeilen C-Kode:
Definitionen aus BSP (ppc860Siu.h):


# define BR_R 0x00000001 /* Bank Valid */

# define BR_PS_16 0x00000800 /* 16 bit port size */

# define OR_ACS_DIV2 0x00000600 /* CS is output 1/2 a clock later */

# define OR_BI 0x00000100 /* Burst inhibit */

# define OR_SCY_0_CLK 0x00000000 /* 0 clock cycles wait states */

# define OR7(base) (CAST(VUINT32 *) (base + 0x013C)) /* Option Reg bank 7*/

# define BR7(base) (CAST(VUINT32 *) (base + 0x0138)) /* Base Reg bank 7 */
C-Programm:


# define SRAMBASEADDR 0xFE000000



UINT32 immrVal = vxImmrGet();

*BR7(immrVal) = SRAMBASEADDR | BR_PS_16 | BR_V;

*OR7(immrVal) = OR_ACS_DIV2 | OR_BI | OR_SCY_0_CLK;

  
Abbildung 3.7: Timing Diagramm für Lese- und Schreibzyklus des MPC860


vxImmrGet() liefert die Startadresse der Internal Memory Map (IMM) zurück. BR7() und OR7() sind Definitionen des BSP, die den Offset der Adresse der Register zur Startadresse der IMM hinzu addieren und somit die Adresse der Register liefern.
Abbildung 3.7 zeigt die resultierenden Signale auf dem 860/COMM Expansion Connector für einen Lese- und einen Schreibzugriff. Es sind exemplarisch die Daten- und Adressleitungen 24 und 28 herausgegriffen worden. Die Signale auf den Adressleitungen werden bei der fallenden Flanke von CS vom SRAM angenommen. Die Daten sind bei der steigenden Flanke von CS gültig. Es ist deutlich die Verzögerung der fallenden Flanke des CS-Signals um eine halbe Taktlänge zu erkennen, was den obigen Einstellungen im OR7 entspricht.
Die Bilddaten der Kamera können nun in den Hautspeicher der MBX-Boards übertragen werden.

next up previous contents
Next: Bilddatenkompressor Up: Auslesen der Bilddaten aus Previous: Speicherorganisation des MBX-Boards
Thorsten Thormaehlen
2000-03-27