Herunterladen Diese Seite drucken

Werbung

.
ERTEC 400
Enhanced Real-Time Ethernet Controller
Handbuch
Seite 1
Copyright © Siemens AG 2010. All rights reserved.
ERTEC 400 Handbuch
Version 1.2.2
Änderungen vorbehalten

Werbung

loading

Inhaltszusammenfassung für Siemens ERTEC 400

  • Seite 1 ERTEC 400 Enhanced Real-Time Ethernet Controller Handbuch Seite 1 Copyright © Siemens AG 2010. All rights reserved. ERTEC 400 Handbuch Version 1.2.2 Änderungen vorbehalten...
  • Seite 2 Schadenersatz. Alle Rechte vorbehalten, insbesondere für den Fall der Patenterteilung oder GM- Eintragung. Alle Produkt- und Systemnamen sind Marken ihres jeweiligen Eigentümers und als solche zu behandeln. Technische Änderungen vorbehalten. Seite 2 Copyright © Siemens AG 2010. All rights reserved. ERTEC 400 Handbuch Änderungen vorbehalten Version 1.2.2...
  • Seite 3 Vorwort Zielgruppe des Handbuchs Dieses Handbuch ist für Hardwareentwickler gedacht, die den ERTEC 400 für neue Produkte einsetzen wollen. Erfahrung auf dem Gebiet Prozessoren, Designen von „Embedded Systemen“ und Ethernetkenntnisse sind dazu notwendig. Es beschreibt ausführlich alle Funktionsgruppen des ERTEC 400 und gibt Hinweise, die beim Entwickeln der eigenen PROFINET IO Device-Hardware zu beachten sind.
  • Seite 4 Weitere Unterstützung Bei Fragen zur Nutzung des beschriebenen Bausteines, die Sie nicht in der Dokumentation beantwortet finden, wenden Sie sich bitte an Ihre Siemens Ansprechpartner in den für Sie zuständigen Vertretungen oder Geschäftsstellen. Fragen, Anmerkungen und Verbesserungen zum vorliegenden Handbuch bitte schriftlich an die angegebene E- Mail-Adresse schicken.
  • Seite 5 Inhaltsverzeichnis Einleitung ..........................9 1.1 Einsatzgebiete des ERTEC 400 ......................9 1.2 Features des ERTEC 400 ........................9 1.3 Aufbau des ERTEC 400 ......................... 10 1.4 Gehäuse des ERTEC 400........................11 1.5 Signal-Funktions-Beschreibung ......................12 1.5.1 GPIO 0-31 und alternative Funktionen................... 12 1.5.2...
  • Seite 6 PCI-Interrupt-Handling: ........................85 8.1.6 PCI-Powermanagement:........................ 87 8.1.7 Zugriffe auf den AHB-Bus: ......................88 8.2 ERTEC 400 - Anwendungen mit PCI: ....................89 8.2.1 ERTEC 400 in einem PC-System ....................89 8.2.2 ERTEC 400 als Teilnehmer an lokalem PCI-Bus................89 8.3 Adressbelegung PCI-Register........................ 90 Seite 6 Copyright ©...
  • Seite 7 10.2 Trace – Interface ............................ 96 10.3 JTAG – Schnittstelle..........................96 10.4 Debugging über UART1 ......................... 96 Sonstiges ..........................97 11.1 Abkürzungen/ Begriffsverzeichnis: ......................97 11.2 Literaturverzeichnis: ..........................98 Seite 7 Copyright © Siemens AG 2010. All rights reserved. ERTEC 400 Handbuch Änderungen vorbehalten Version 1.2.2...
  • Seite 8 Tabelle 19: Einstellung verschiedener Pagegrößen ....................75 Tabelle 20: Einstellung verschiedener Offsetbereiche................... 75 Tabelle 21: Übersicht der Zugriffe auf Adressbereiche von ERTEC 400............... 76 Tabelle 22: Timing für LBU-Lesezugriffe mit separater Read-/Writeleitung............77 Tabelle 23: Timing für LBU-Schreibzugriffe mit separater Read-/Writeleitung ............78 Tabelle 24: Timing für LBU-Readzugriffe mit gemeinsamer Read-/Writeleitung............
  • Seite 9 Register PLL_STAT_REG, RES_CTRL_REG, PCI Mischbetrieb, PCI Zugriff Einleitung Der ERTEC 400 ist für die Realisierung von PROFINET Devices mit RT- und IRT-Funktionalität vorgesehen. Mit seinem integrierten ARM946- Prozessor, dem integriertem 4-Port-Realtime-Ethernet-Switch und den verschiedenen Möglichkeiten an einem selektierbaren Bussystem (PCI oder LBU) externe Host-Prozessor- Systeme anzuschließen, bietet er alle Voraussetzungen für die Realisierung von PROFINET-Devices mit...
  • Seite 10 Switch (Port 1) (Port 2) (Port 3) (Port 4) SM I RM II- Interface REF_CLK PC I-/Local Bus Abbildung 1: ERTEC 400 Block-Diagramm Seite 10 Copyright © Siemens AG 2010. All rights reserved. ERTEC 400 Handbuch Änderungen vorbehalten Version 1.2.2...
  • Seite 11 Gehäuse des ERTEC 400 Der ERTEC 400 wird in einem FBGA-Gehäuse mit 304 Pins geliefert. Der Abstand zwischen den Pins beträgt 0,8 mm. Die Gehäusegröße ist 19mm x 19mm. Abbildung 2: ERTEC 400-Gehäusebeschreibung Verarbeitungshinweise zum Löten des ERTEC 400 sind in folgenden Dokumenten beschrieben: /10/ Lötanweisung für bleihaltigen Baustein.
  • Seite 12 B/O (I) GPIO oder MC_PLL GPIO29 TGEN_OUT5_N B/O (I) GPIO oder MC_PLL GPIO (interruptfähig) GPIO30 TGEN_OUT6_N B/O (I) oder MC_PLL GPIO31 B (I) GPIO (interruptfähig) Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 13 Referenztakt für RMII HW-Reset RESET_N I (I) AA15 1.5.5 TEST-Pins Signalname Pull- Pin- Bemerkung (Reset) Nummer TEST Testmode TEST_N (3) Testkonfiguration TMC1 (3) Testkonfiguration TMC2 (3) Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 14 Adress-Bit 22 / ERTEC400 – CONFIG3 (2) O (I) System- Konfiguration (ext. PU/PD nötig) Adress-Bit 23 / ERTEC400 – CONFIG4 (2) O (I) System- Konfiguration (ext. PU/PD nötig) Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 15 O (O) Clock SDRAM CS_SDRAM_N O (O) Chip Select SDRAM RAS_SDRAM_N O (O) RAS-Ltg. SDRAM CAS_SDRAM_N O (O) CAS-Ltg. SDRAM WE_SDRAM_N O (O) RD/WR SDRAM Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 16 LBU_CFG=1: Keine Funktion STOP_N LBU_AB00 B/I (I) LBU: Adressbit 0 DEVSEL_N LBU_AB01 B/I (I) LBU: Adressbit 1 TRDY_N LBU_AB02 B/I (I) LBU: Adressbit 2 Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 17 LBU-Mode: Kein Open Drain PCI-Mode: Open Drain, ext. PU INTB_N LBU_IRQ1_N O/O (T) nötig LBU-Mode: Kein Open Drain M66EN B/I (I) Auswahl PCI-Takt 66/33MHz Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 18 RMII: Carrier Sense/Data Valid CRS_DV_P2 CRS_P1 I/I (I) Port2 MII: Carrier Sense Port1 RMII: Receive Error Port2 RX_ER_P2 RX_ER_P1 I/I (I) MII: Receive Error Port1 Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 19 (1 Pin) AVDD_PCI SV Analog-PCI 1,5 Volt (1 Pin) AGND_PCI GND Analog-PCI (1 Pin) TACT_N Not Used Tabelle 1: ERTEC 400 Pinbelegung und Signalbeschreibung Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 20 IO-Funktion RESET und IO-Funktion Betrieb sind identisch wenn kein Klammerwert vorhanden ist. Beispiel: Funktion = Output, IO-Funktion während RESET = Output oder I /I Funktion1 = Input, Funktion2 = Input, IO-Funktion während RESET = Input Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 21 ARM946E-S Prozessor Im ERTEC 400 ist der Prozessor ARM946E-S implementiert. Grundlage für die Beschreibung sind die Dokumente /1/ und /2/. Aufbau des ARM946E-S Eingesetzt wird ein ARM946E-S Prozessorsystem. In der nachfolgenden Abbildung ist die Struktur des Prozessors dargestellt. Das System beinhaltet neben dem Prozessorkern je einen Daten- und Instruction-Cache, eine Memory Protection Unit (MPU), System Control Coprozessor und ein Tightly Coupled Memory.
  • Seite 22 Der Prozessor kann entweder mit 50MHz, 100MHz oder 150 MHz betrieben werden. Die Arbeitsfrequenz wird über die Konfigurations-Pins CONFIG[3] und CONFIG[4] während der Reset-Phase eingestellt. Die Kommunikation mit den Komponenten des ERTEC 400 erfolgt über den AHB-Bus mit einer Frequenz von 50 MHz.
  • Seite 23 Am ARM946E-S ist ein ETM9-Modul angeschlossen, das eine Debugunterstützung für Daten- und Instruction- Trace im ERTEC 400 zulässt. Das Modul enthält alle vom Prozessor für den Daten- und Instructiontrace notwendigen Signale. Bedient wird das ETM9-Modul über das JTAG-Interface. Die Traceinformationen werden über einen FIFO-Speicher an den Traceport nach außen gegeben.
  • Seite 24 Befehl wird durch schreiben der CPU auf die Register IRQEND/FIQEND mit einem beliebigen Wert dem Interrupt- Controller mitgeteilt. Der Interrupt-Controller entscheidet selbstständig, welches ISR-Bit mit dem EOI-Befehl Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 25 "Low-Water-Mark" ist unterschritten wahlweise wahlweise von IRQ Steigende Flanke default: IRQ0_SP wahlweise wahlweise von IRQ Steigende Flanke frei programmierbar von IRQ Tabelle 3: Übersicht FIQ-Interrupts Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 26 (1) Ein Zugriff auf nicht vorhandene Adressen wird von den einzelnen Funktionsgruppen des ERTEC 400 erkannt und löst einen Puls mit der Dauer Tp = 2/50MHz aus. Bei Auswertung dieses Interrupts ist der angeschlossene FIQ-Eingang als flangengetriggerter Eingang zu parametrieren.
  • Seite 27 Deklaration eines IRQ-Eingangs als FIQ7 (Eingang FIQ7 am FIQ-Interruptcontroller) Bit-Nr Name Beschreibung 3 – 0 FIQ2SREG Nummer des auszuwählenden Eingangs (Binärcode) FIQ2SENABLE 0=FIQ-Deklaration ignorieren 1=FIQ-Deklaration berücksichtigen Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 28 Priorität des Fast Interrupt Requests am Eingang FIQ0 .. FIQ7 des FIQ-Interruptcontrollers Bit-Nr Name Beschreibung 2 – 0 FIQPR0..FIQPR7 Binärcode der Priorität 7 – 3 nicht genutzt Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 29 Beschreibung Trigger Select Register Auswahl der Interrupterkennung Bit.-Nr Name Beschreibung 15 – 0 TRIGREG Interrupteingang 0 – 15 0=Interrupterkennung per Flanke 1=Interrupterkennung per Pegel Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 30 Default: 0x0000_000F Beschreibung Priority Register Vorgabe der Priorität eines Interrupt Requests am zugehörigen Eingang Bit-Nr Name Beschreibung 3 – 0 PRIOREG Binärcode der Priorität Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 31 Beim Schreiben auf diese Register kann es zu unvorhersehbaren Konfigurationsänderungen im ARM946 kommen. Eine genaue Beschreibung der ARM946-Register ist in den Dokumenten /1/ und /2/ nachzulesen. Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 32 Bussystem des ERTEC 400 Der ERTEC 400 besitzt intern zwei unterschiedliche Busse. hochperformanten Kommunikationsbus (Multilayer AHB-Bus) Peripheriebus (APB-Bus) Folgende Funktionsblöcke sind direkt am Multi-Layer AHB-Bus angeschlossen: ARM946E-S (Master/Slave) IRT-Switch (Master) (Master) (Master/Slave) Interrupt-Controller (Slave) Lokales SRAM (Slave) EMIF-Interface (Slave) Über eine AHB/APB-Bridge können die Master auf die restliche Peripherie zugreifen, die am niederperformanten APB-Bus angeschlossen sind.
  • Seite 33 Speichermedium unterstützt.. Für die unterschiedlichen Boot- und Download-Modes stehen verschiedene Routinen zur Verfügung. Um die Quelle und den Mode auszuwählen stehen am ERTEC 400 drei Eingänge BOOT[2:0] zur Verfügung. Während der aktiven Resetphase werden die Boot-Pins eingelesen und im Register BOOT_REG im System-Control-Registerbereich abgespeichert.
  • Seite 34 Download des Second-Level-Loaders in das USER-RAM durch. Der USER-RAM wird auf die Adresse 0x00000000 gemapped und der Second-Level-Loader gestartet. Dieser führt den Download der Anwender-Firmware in die verschiedenen Speicherbereiche des ERTEC 400 durch und startet nach Beendigung des Downloads die Firmware.
  • Seite 35 Interrupt-Bit 4 "INT_QVZ_PCI_STATE" im Register "PLL_STAT_REG" zu löschen. General Purpose IO (GPIO) Es stehen maximal 32 General Purpose Input/Output im ERTEC 400 zur Verfügung. Nach Reset sind diese als GPIO-Eingänge eingestellt. Die GPIO’s [31, 7 : 0] stehen immer als IO zur Verfügung, da keine zusätzlichen Funktionen parametrierbar sind.
  • Seite 36 GPIO11_PORT_MODE Port GPIO(11); Siehe Hinweis bei Bits(17 :16) 25:24 GPIO12_PORT_MODE Port GPIO(12); 27:26 GPIO13_PORT_MODE Port GPIO(13); 29:28 GPIO14_PORT_MODE Port GPIO(14); 31:30 GPIO15_PORT_MODE Port GPIO(15); Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 37 GPIO31_PORT_MODE Port GPIO(31); Timer 0 und 1 Im ERTEC 400 sind zwei voneinander unabhängige Timer integriert. Sie können zur internen Überwachung von diversen Softwareroutinen verwendet werden. Jeder Timer besitzt einen Interrupt-Ausgang, der am IRQ-Interrupt- Controller des ARM946 angeschlossen ist. Der Zugriff auf die Timer erfolgt immer 32-Bit breit.
  • Seite 38 0x00000000 Reload-Register für beide Vorteiler TIM0 0x0018 4 Byte 0x00000000 Timer 0-Wert Register TIM1 0x001C 4 Byte 0x00000000 Timer 1-Wert Register Tabelle 10: Übersicht Timer-Register Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 39 1: Timer wird beim Timerwert 00000000h mit dem Reload Register-Wert geladen und läuft weiter Reserviert Keine Bedeutung (schreib- und lesbar) Reserviert Keine Bedeutung (read=0) Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 40 Reload-Register für die 2 Vorteiler. Bit-Nr Name Beschreibung Prediv (7:0) Reload-Wert des Vorteilers Nr. 0 15:8 Prediv (15:8) Reload-Wert des Vorteilers Nr. 1 31-16 Reserviert Keine Bedeutung (read=0) Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 41 Inkonsistenz der gelesenen Zählwerte führen kann. Hinweis zur Eingangsfrequenz: Die max. Eingangsfrequenz für den F-CLK beträgt ¼ des APB-Clocks. Bei Quarzausfall am ERTEC 400 stellt sich an der PLL eine minimale Ausgangsfrequenz zwischen 40 –90 MHz ein. Daraus ergibt sich eine minimale APB-CLK Frequenz von PLLOUT 40MHz / 6 = 6,6666 MHZ.
  • Seite 42 16-Bit- und 32-Bit- Zugriffe möglich. Bit-Nr Name Beschreibung 31:16 F-CNT-RES (31:16) Oberes Wort des F-Counter-Reset (beliebiger Wert) 15:0 F-CNT-RES (15:0) Unteres Wort des F-Counter-Reset Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 43 Watchdog-Timer Im ERTEC 400 sind zwei Watchdog-Timer integriert. Die Watchdog-Timer sind zur selbstständigen Überwachung von Prozessen vorgesehen. Der Arbeitstakt ist genauso wie der Prozessortakt von der PLL abgeleitet und beträgt 50 MHz. 4.5.1 Watchdog-Timer 0 Der Watchdog-Timer 0 ist ein 32-Bit breiter Abwärtszähler, dem der Ausgangs WDOUT0_N zugeordnet ist.
  • Seite 44 Watchdog-Zähler 0 freigeben/sperren: 0: Watchdog-Zähler 0 gesperrt 1: Watchdog-Zähler 0 freigegeben Anmerkung: Ist dieses Bit=0, ist der WDOUT0_N-Ausgang des ERTEC 400 aktiv (0), der Interrupt des Watchdogs (WDINT) ist „0“ und das Status-Bit des Zählers 0 (Bit 3) ist „0“.
  • Seite 45 Bit (31:0) des Watchdog-Zählers 0. WDOG1 Addr.: 0x4000_2118 Default: 0xFFFF_FFFF Beschreibung Watchdog-Wert 1. Wert des Watchdog-Zählers 1. Bit.-Nr Name Beschreibung 31-0 WDOG1(36:4) Bit (36:4) des Watchdog-Zählers 1. Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 46 UART1/ UART2 Im ERTEC 400 sind zwei UART’s implementiert. Die Eingänge und Ausgänge der UART’s stehen als alternative Funktion am GPIO-Port [13 : 9] (UART1) und GPIO-Port [18 : 14] (UART2) zur Verfügung. Dazu müssen die IO’s auf die entsprechenden Ein- bzw. Ausgänge und die alternative Funktion parametriert werden (siehe Registerbeschreibung GPIO).
  • Seite 47 UARTCLK Der UART1 kann auch als BOOT-Medium verwendet werden, wenn z.B. Funktionen von einem externen PC in den ERTEC 400 geladen und ausgeführt werden sollen. Die Selektion des BOOT-Mediums erfolgt durch die Eingänge BOOT[2:0] während der aktiven Reset-Phase. Die Einstellung der UART1-Signalpins und das Laden des Programm-Codes wird dann vom BOOT-Lader übernommen.
  • Seite 48 Name Beschreibung 7 - 0 ------- (Write) Framing-, Parity-, Break- und Overrun-Error werden gelöscht (Read) Framing-Error = 1 Empfangenes Zeichen hat kein gültiges Stop-Bit Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 49 UART Line Control Register Low-Byte Baud-Rate Low-Byte Bit 7 - 0 Bit.-Nr Name Beschreibung 7 - 0 BAUD DIVLS Baud-Rate-Divisor Low-Byte NOTE: Der Baud-Rate-Devisor wird bestimmt nach folgender Formel: Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 50 FIFO ist freigegeben und Receive-FIFO-Buffer ist voll. TXFE Transmit FIFO Empty = 1 wenn FIFO ist gesperrt und Transmit Holding Register ist leer FIFO ist freigegeben und Transmit-FIFO-Buffer ist leer. Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 51 NOTE: Der Low-Power-Devisor wird bestimmt nach folgender Formel: UARTCLK ILPDVSR = ---------------------- - 1 FIrLPBAUD16 ist nominal 1,8432 MHz IrLPBAUD16 Null als Devisor ist nicht gültig. Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 52 Synchrones Interface SPI Im ERTEC 400 ist ein SPI-Interface implementiert. Die Eingänge und Ausgänge des SPI-Interface stehen als alternative Funktion am GPIO-Port [23:16] zur Verfügung. Dazu müssen die IO’s auf die entsprechenden Ein- bzw. Ausgänge und die alternative Funktion parametriert werden (siehe Registerbeschreibung GPIO). Wenn das SPI Interface verwendet wird, stehen die Pins nicht mehr als normale GPIO’s zur Verfügung.
  • Seite 53 Zusätzlich kann das SPI-Interface auch als BOOT-Medium verwendet werden, wenn z.B. Funktionen von einem seriellen EEPROM in den ERTEC 400 geladen und ausgeführt werden sollen. Die Selektion des BOOT-Medium erfolgt durch die Eingänge BOOT[2:0] während der aktiven Reset-Phase. (Siehe Beschreibung BOOT-ROM).
  • Seite 54 Master/Slave Mode Select (Dieses Bit kann nur gerändert werden wenn Bit4 SSE = 0 ist) 0 = Device ist Master (default) 1 = Device ist Slave Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 55 (Wert liegt zwischen 2 – 254. Formel siehe SSPCR0 – Register.) Beim Lesen des Wertes ist Bit 0 immer Null 15-5 ------------ Reserviert Read: Wert ist undefiniert Write: Sollte immer mit 0 beschrieben werden Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 56 Daten gerade geschrieben werden. System-Control-Register Die System-Control-Register sind ERTEC 400 spezifische Control-Register, die von PCI/LBU-Seite oder vom ARM946 gelesen und beschrieben werden können. Eine Aufstellung und Adressbelegung aller System-Control- Register und die genaue Beschreibung wird in den folgenden Kapiteln behandelt.
  • Seite 57 System-Control-Register Beschreibung ID_REG Addr.: 0x4000_2600 Default: 0x4026_0100 Beschreibung Identification ERTEC 400. Bit-Nr Name Beschreibung 31..16 ERTEC400-ID ERTEC 400-Kennung: 4026h (entspricht der Device ID der AHB-PCI-Bridge) 15..8 HW-RELEASE HW-Release: 01h 7..0 Reserviert Reserviert BOOT_REG Addr.: 0x4000_2604 Default: Bootpins[2:0] Beschreibung Boot-Mode-Pins BOOT(2:0) lesbar.
  • Seite 58 1: Letzter Reset war Reset über Software-Reset WD_RESET 1: Letzter Reset war Reset über Watchdog PLL_STAT_REG Addr.: 0x4000_2614 Default: 0x0007_0005 Beschreibung Statusregister für PLL des ERTEC 400 und InterruptControl für FIQ3. Bit-Nr Name Beschreibung 31..19 ---- Reserviert Interrupt-Maskierung für INT_QVZ_PCI_SLAVE_STATE...
  • Seite 59 1: Takt ist freigegeben PM_STATE_REQ_REG Addr.: 0x4000_261C Default: 0x0000_0000 Beschreibung Angefordeter Powerstate des PCI-Hosts Bit-Nr Name Beschreibung 31: 2 ---- Reserviert PM_STATE_REQ angefordeter Powerstate des PCI-Hosts Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 60 ---- Reserviert QVZ_AHB_IRT QVZ_AHB_LBU/PCI LBU/PCI QVZ_AHB_ARM946 ARM946 QVZ_APB_ADR Addr.: 0x4000_2634 Default: 0x0000_0000 Beschreibung Adresse einer Fehladressierung am APB Bit-Nr Name Beschreibung 31:0 QVZ_APB_ADR Adresse Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 61 Default: 0x0000_0000 Beschreibung Control der PCI-Interrupts Bit-Nr Name Beschreibung 31:2 ---- Reserviert PCI_INT_CTRL[1] PCI_INT_CTRL = 0x0000_0001 IRQ0_HP SERR_N PCI_INT_CTRL = 0x0000_0000 IRQ0_HP INTB_N PCI_INT_CTRL[0] Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 62 Schreibschutz-Register für das Register ARM9_CTRL. Bit-Nr Name Beschreibung 31:1 ---- Reserviert Write Enable für Register ARM9_CTRL WE_ARM9_CTRL 1: ARM9_CTRL ist beschreibbar. 0: ARM9_CTRL ist nur lesbar. Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 63 • RMII/MII – Anschaltung der Ethernet MAC’s • 5.1.1 Taktversorgung im ERTEC 400 Die benötigten Takte werden im ERTEC 400 mittels interner PLL und/oder durch direkte Einspeisung erzeugt. Eine genaue Aufstellung der Takte zeigt die folgende Tabelle: MODUL TAKTQUELLE FREQUENZ...
  • Seite 64 Im MII-Betrieb werden die beiden PHYs mit einem PHY-Clock 25MHz versorgt. Der Takt für die Ethernetports des ERTEC 400 wird von den MII-PHYs über die Taktleitungen RX_CLK und TX_CLK eingespeist. Der Clock für die Ethernetports wird über das Clock-Control-Register im IRT-Switch aktiviert/gesperrt.
  • Seite 65 Abbildung 10: Taktversorgung der Ethernetanschaltung Resetlogik des ERTEC 400 Die Resetlogik setzt die gesamte Schaltung des ERTEC 400, bis auf den PCI-Teil der AHB-PCI-Bridge, zurück. Das Resetsystem des ERTEC 400 wird durch folgende Ereignisse aktiviert: Hardware-Reset über externen Pin RESET_N.
  • Seite 66 Timers der Watchdog-Reset aktiviert, wenn die Watchdog-Funktion mit dem Bit WD_RES_FREI aktiv ist. Der Watchdog-Reset wird im ERTEC 400 über eine parametrierbare Pulsverlängerung (PV) geführt. Der Watchdog- Reset setzt den kompletten Schaltungsteil des ERTEC 400 zurück. Das Watchdogereignis wird dann über einen GPIO-Pin an das Hostsystem signalisiert.
  • Seite 67 EMIF-Konfigurationsregistern Async_Bank_0_Config - Async_Bank_3_Config der „Extended_Wait_Mode“ einzuschalten. Wird einer der 4 Memorybereiche, die über die Chip-Select-Ausgänge CS_PER0_N - CS_PER3_N selektiert werden, angesprochen, so wartet der Memory-Controller des ERTEC 400 auf das Eingangssignal RDY_PER_N. Die Überwachungsdauer wird im EMIF-Register ASYNC_WAIT_CYCLE_CONFIG eingestellt und ist aktiv, wenn im EMIF-Rgeister EXTENDED_CONFIG die Quittungsverzugüberwachung (Bit7) gesetzt ist.
  • Seite 68 Interrupt-Bit 4 "INT_QVZ_PCI_STATE" im Register "PLL_STAT_REG" zu löschen. External Memory Interface (EMIF) Um auf externen Speicherbereich zugreifen zu können, ist im ERTEC 400 ein Externes Memory Interface realisiert. Das Interface beinhaltet je einen SDRAM-Memory-Controller und einen SRAM-Memory-Controller für asynchrone Speicher. Beide Interfaces sind getrennt als aktive Interfaces parametrierbar. Das heißt, dass am Ende eines Zugriffs der Datenbus aktiv auf High getrieben wird.
  • Seite 69 Datenbusbreite des externen Speicher für BOOT wird über die Eingangspins BOOT[2:0] selektiert Defaulteinstellung „langsames Timing“ für BOOT-Vorgang. Quittungsverzugüberwachung parametrierbar Unterstützt folgende asynchrone Bausteine SRAM Flash-PROM Externe Peripherie-Bausteine Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 70 Dieser Wert x 16 entspricht der Anzahl der AHB-Takte, die Der async. Controller auf RDY_PER_N wartet, bevor der Zugriff mit QVZ- IRQ abgeschlossen wird. Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 71 0: SDRAM Power Up Sequence läuft 1: SDRAM Power Up Sequence ist abgeschlossen 28..13 ---- Reserviert 12..0 REFRESH_RATE Refresh Rate Anzahl der AHB-Takte zwischen 2 SDRAM Refresh Cycles Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 72 (r_hold + 1) AHB-Takte zwischen steigender Flanke des Lesesignals und Wechsel von Adresse und Chip Select 3..2 ---- Reserviert 1..0 ASIZE Async Bank Size 00: 8-Bit Datenbus 01: 16-Bit Datenbus 1x: 32-Bit Datenbus Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 73 1: QVZ-Watchdog für async. Zugriffe enabled Nach Ablaufen des Watchdogs (256 AHB-Takte) wird Interrupt ausgelöst. Bit 7 auf 0 setzen löscht Interrupt-Quelle. 6..0 ---- Reserviert Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 74 LOW-Aktiv HIGH-Aktiv LBU_RDY_N ist ein Tristate-Ausgang. Erfolgt über das LBU-Interface ein Zugriff auf den ERTEC 400 (CS mit RD oder WR aktiv) , dann wird LBU_RDY_N zuerst auf inaktiv (Wait) geschaltet. Sobald die Daten verfügbar sind (Read), bzw. übernommen werden können (Write), wird LBU_RDY_N für einen 50 MHz-Takt aktiv und danach wieder auf Tristate geschaltet.
  • Seite 75 Dies ist zum Beispiel sinnvoll wenn über eine Page die Peripherie initialisiert werden soll. Ist nach der Initialisierung ein Zugriff auf diesen Adressbereich nicht mehr notwendig, dann kann die Page umparametriert werden um auf andere Adressbereiche des ERTEC 400 zuzugreifen. Seite ERTEC 400 Handbuch Copyright ©...
  • Seite 76 Der Adressbereichszugriff muss in diesem Fall als „Little-Endian-Zugriff“ parametriert werden. Die Zugriffe des Host erfolgen asynchron zum AHB-Clock des ERTEC 400. Deshalb werden sie auf den AHB- Clock einsynchronisiert. Die folgenden Abbildungen zeigen verschiedene Read- und Write-Sequenzen mit den dazugehörigen Timingwerten:...
  • Seite 77 0 ns 12 ns read recovery time 25 ns Tabelle 22: Timing für LBU-Lesezugriffe mit separater Read-/Writeleitung Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 78 0 ns data valid/enabled to read pulse deasserted hold time 0 ns write recovery time 25 ns Tabelle 23: Timing für LBU-Schreibzugriffe mit separater Read-/Writeleitung Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 79 0 ns 12 ns read recovery time 25 ns Tabelle 24: Timing für LBU-Readzugriffe mit gemeinsamer Read-/Writeleitung Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 80 25 ns Tabelle 25: Timing für LBU-Schreibzugriffe mit gemeinsamer Read-/Writeleitung Die Setup-Zeit des Schreib-Signals muss eingehalten werden, sonst treibt die LBU den ERTEC 400 Datenbus. Die LBU besitzt getrennte Chip-Select-Leitungen für die Page Register (LBU_CS_R_N) und den Zugriff auf den AHB-Bus (LBU_CS_M_N).
  • Seite 81 Low Wort des LBU Pagex_Range_registers Bit-Nr Name Beschreibung 15..0 Untere 16 Bit für Bereichseinstellung 15:8 sind schreib- und lesbar 7:0 sind nur lesbar (Wert: 00h) Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 82 Default: 0x0000_0000 LBU_CS_R_N Beschreibung Konfiguration für die einzelnen Pages Bit-Nr Name Beschreibung 15..1 Reserviert PAGE_X_32 1: Page ist 32-Bit Page 0: Page ist 16-Bit Page Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 83 PCI-Interface Als PCI-Interface wird die AHB-PCI-Bridge von Fujitsu-Siemens eingesetzt. Es hat am AHB-Bus ein 2 Giga-Byte großes Segment das ab der Adresse 0x80000000 (Offset = 2Gbyte) beginnt. Siehe dazu auch die „Detaillierte Speicherbeschreibung im Kapitel 9.2. Hier ist der Konfigurations-Bereich des PCI-Macros adressiert. Im Konfigurationsbereich kann das Mapping der Adressen des AHB auf den Adressbereich des PCI-Busses eingestellt werden.
  • Seite 84 Im 2nd level Bootcode muss das Bit 3 "ARB_MODE" im "M_LOCK_CTRL" Register (Adresse 0x4000264C) gesetzt werden. Es ist zwingend erforderlich, dass zu diesen Zeitpunkt alle anderen AHB Master noch disabled sind. Siehe Ablaufdiagramm: Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 85 IRQ0_SP und IRQ1_SP. Beide sind über die interne Logikstruktur der Interrupt Controller Unit (ICU) am IRQ Eingang des ARM946E-S angebunden. Optional besteht die Möglichkeit diese Interrupts durch Parametrierung der ICU wahlweise auch als FIQ an den ARM946E-S anzubinden. Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 86 SERR_N ist ein PCI taktsynchrones Signal. Bei Verwendung werden die Interrupts IRQ0_HP und IRQ_IRT_API_ERR auf den PCI-Takt aufsynchronisiert und für die Dauer einer PCI-Takt-Periode aktiv gehalten. Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 87 „PM_Control_Status“ gesetzt sein.Der ERTEC 400 braucht zum Auslösen des Signals „PME_N“ den PCI-Takt. Ist der Powerzustand des ERTEC 400 nicht D0 dann müssen alle PCI-Interrupts im ERTEC 400 per Software gesperrt werden (lt. PCI-Spec dürfen PCI-Interrupts nur im Zustand D0 freigegeben werden) . Eine Hardwareunterstützung zum Sperren der Interrupts gibt es nicht.
  • Seite 88 Wort im gleichen 1k-Bereich beschrieben wird (z.B. durch entsprechende Datenlokatierung). Der PROFINET Stack nutzt eine entsprechende Datenlokatierung (Workaround 3). Die Applikations-Software sollte vom Anwender überprüft werden. Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 89 8.2.1 ERTEC 400 in einem PC-System In PC-Systemen kann der ERTEC 400 als PC-Karte mit Host- und Masterfunktionalität ins System integriert werden. Die PC-Karte kann am 32-Bit-Bus mit maximal 66 MHz betrieben werden. Dabei ist der Interrupt INTB_N zu sperren, weil das PC-Interface des ERTEC 400 nur ein „Single-Function-Interface“ ist. Damit aber eine Unterbrechung des niederprioren Interrupts durch einen hochprioren Interrupt vom IRT-Switch möglich wird, kann...
  • Seite 90 0x00000000 0x0088 PM_Capability Reserviert 0x00020000 0x008C Class_Code Revision_ID 0x00000000 0x0090 AHB_Base_Address_Register0 0x00000001 0x0094 AHB_Base_Address_Register1 0x00000000 0x0098 AHB_Base_Address_Register2 0x00000000 0x009C AHB_Base_Address_Register3 0x00000000 0x00A0 AHB_Base_Address_Register4 0x00000000 Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 91 0x00F4 0x00F8 SERR_Generation_By_Software 0x00000000 0x00FC Enable_Configuration_From_PCI 0x00000000 Tabelle 27: Übersicht PCI-Register PCI-Register Beschreibung Eine genaue Beschreibung der einzelnen PCI-Register ist im Dokument /3/ nachzulesen. Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 92 6FFF FFFF 7000 0000 EMIF-Register Not used EMIF-Register 7FFF FFFF 8000 0000 8 - 15 Not used FFFF FFFF Tabelle 28: Aufteilung der Speicherbereiche Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 93 64 kB interne Register * 16 MB PCI-Konfigurations-Register FFFF_FFFF Note: Größe und Lage der Bereiche siehe "AHB-PCI-Bridge" Rev.2.5, 2002, FujitsuSiemensComputers Tabelle 29: Detaillierte Beschreibung der Speichersegmente Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 94 32 Bytes genommen. Die Anzahl der Spiegelungen ist in diesem Fall N = 8. Ein Zugriff auf die 4 nicht genutzten Bytes führt zu keinem Quittungsverzug, jedoch sind die gelesen bzw. geschriebenen Werte nicht definiert. Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 95 10 Test und Debugging 10.1 Embedded Trace Macrocell ETM9 Im ARM946E-S des ERTEC 400 ist ein ETM9-Modul integriert welches ein Tracen von Instructions und Daten ermöglicht. Das ETM-Modul wird vom ARM946E-S mit den notwendigen Signalen versorgt um die Tracefunktionen durchführen zu können. Bedient wird das ETM9-Modul über das Trace- oder JTAG-Interface. Die Traceinformationen werden in einem internen FIFO abgelegt und über die Schnittstelle zum Debugger...
  • Seite 96 10.2 Trace – Interface Parametriert, freigegeben oder gesperrt wird das Trace-Interface durch einen angeschlossenen Debugger (z.B von Lauterbach) an der JTAG-Schnittstelle. Zum Tracen von internen Prozessorzuständen wird ein Traceport im ERTEC 400 zur Verfügung gestellt: PIPESTA [2:0] • TRACESYNC •...
  • Seite 97 Peripheral Communication Interface Pull Down Pull Up RMII Reduced Media Independent Interface Real Time Standard Serial Peripheral Interface Software UART Universal Asynchronous Receiver / Transmitter Warteschlange Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...
  • Seite 98 IEEE Standard Test Access Port and Boundary-Scan Architecture (1149.1 IEEE Boundary Scan 2001.PDF); /10/ IR35-107-3.pdf /11/ LeadfreeIR50_60.pdf /12/ Codeexpl.pdf /13/ EB 400 Handbuch V1.2.1 (EB400_Handbuch_V121.PDF); /14/ ERTEC400_ERRATA_DE.PDF /15/ ERTEC_ARM_ERRATA_INFO.PDF Seite ERTEC 400 Handbuch Copyright © Siemens AG 2010. All rights reserved. Änderungen vorbehalten Version 1.2.2...