Neues vom STRIP Forth-Prozessor



Ähnliche Dokumente
Name: ES2 Klausur Thema: ARM Name: Punkte: Note:

Bedienungsanleitung PC-Konfigurationssoftware des ID Inclinometers

Wie man Registrationen und Styles von Style/Registration Floppy Disketten auf die TYROS-Festplatte kopieren kann.

Stepperfocuser 2.0 mit Bootloader

Der SD-Kartenslot befindet sich an der rechten Gehäuseseite unterhalb der rechteckigen hellgrauen Gummiabdeckung.

DIGITALVARIO. Anleitung Bootloader. Ausgabe 0.1 deutsch für Direkt-Digital-Vario. Firmware ab Hardware 01 Seriennummer ab 0003

Atmel AVR für Dummies

AN025. Application Note 025 zu MODULAR-4 (ML3 und ML5) Messen der CPU-Auslastung im Echtzeitbetrieb

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Der Task-Manager

Dokumentation IBIS Monitor

3.14 Die Programmieroberfläche Programmierung

Cisco AnyConnect VPN Client - Anleitung für Windows7

Synchronisierung. Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

Inventur. Bemerkung. / Inventur

Lehrer: Einschreibemethoden

Elektrische Logigsystem mit Rückführung

V o r w o r t. A n l e i t u n g

Bedienungsanleitung Version 1.0

Praktikum Mikrocomputertechnik

Übersicht und Dokumentation der Reset- Funktionen der IO CONNECT

7.3 Einrichtung 13. Monatslohn. Auszahlung Ende Jahr / Ende der Beschäftigung

GOBio. Kontrolle mit Fingerabdrücken. 868 MHz Handsender mit biometrischer Aktivierung

Installationsanleitung zum Access Point Wizard

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

FH-SY Chapter Version 3 - FH-SY.NET - FAQ -

S O L U T I O N S ::::: CSE-H55 Ethernet/RS422 Wandler. Installationsanleitung

C.M.I. Control and Monitoring Interface. Zusatzanleitung: Datentransfer mit CAN over Ethernet (COE) Version 1.08

Thermoguard. Thermoguard CIM Custom Integration Module Version 2.70

Die Funklösung für effektvolle Wohnraumund Outdoorbeleuchtung

Allgemeine Anleitung Treiber für CP2102

Objektorientierte Programmierung

Treppensoftware Programme. Hilfe - 3D Plus Online. konstruieren/präsentieren

Schnelleinstieg. EXPOSÉ - Immonet- Version. = perfektes ImmobilienMarketing

Enigmail Konfiguration

Launchpad Mini. Überblick. Vielen Dank, dass Sie sich für unseren kompaktesten Launchpad Grid-Controller entschieden haben.

Browsereinstellungen für moneycheck24 in Explorer unter Windows

Bedienungsanleitung TIME IT. a Look Solutions 1 product

Softwarelösungen: Versuch 4

Einführung in die Programmierung

Inhaltsverzeichnis

1. So beginnen Sie eine Kalkulation

Bekannte Effekte bei Soft- und Hardware der ESTEC Datenlogger sowie der PC Auswertesoftware

Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook ( ) Zentrum für Datenverarbeitung der Universität Tübingen

Nutzung von GiS BasePac 8 im Netzwerk

Quanton Manual (de) Datum: URL: )

S7-Hantierungsbausteine für R355, R6000 und R2700

Benutzerkonto unter Windows 2000

Befehlssatz zum High Speed Interface-88-USB (HSI-88-USB) (ab Firmware 0.71) (Version 1.2)

Installation OMNIKEY 3121 USB

GPS Garmin MapSource - Track erstellen und nutzen

easyident Türöffner easyident Türöffner Art. Nr. FS-0007 FS Fertigungsservice

HARDWARE. Öffnung Kensington Kabelschloss 2 Umschalttasten für Templates. USB-Buchse. 16 Drehregler. 4 Tasten für Navigation und Modus-Auswahl

Filialpreisverwaltung

Computergruppe Heimerdingen Basiskurs. Karlheinz Wanja & Richard Zeitler

Evident VDDS-Anbindung von MIZ

Produktinformation TROXNETCOM-AS-Interface Planung

Auto-Provisionierung tiptel 31x0 mit Yeastar MyPBX

BANKETTprofi Telefonschnittstelle

1) Farbsteuergerät in der Nikobus-Software unter Modul zufügen hinzufügen.

5. Schaltwerke und Speicherelemente S Q

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Argo 2.0 Software Upgrade

5. Schaltwerke und Speicherelemente

Anbindung eines Forth- Targets an einen Forth-Host. Rechner z.b. PC steuert ein Target System z.b. Evaluation Board

Technical Note 0201 Gateway

Rechnerarchitektur Atmega Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7

Virtuelle COM-Schnittstelle umbenennen

Vierfach-Bluetooth Relais PL0051

Betriebsanleitung Modbus-Konverter Unigate-CL-RS

EINRICHTUNG DER FANUC-MERCATOR- SCHNITTSTELLE

mit SD-Karte SD-Karte Inhalt

Tageslichtsimulator Easy Time Controll. Bedienungsanleitung

Melde- und Veröffentlichungsplattform Portal (MVP Portal) Hochladen einer XML-Datei

Architektur Verteilter Systeme Teil 2: Prozesse und Threads

WLAN Konfiguration. Michael Bukreus Seite 1

Anleitung über den Umgang mit Schildern

Diese Anleitung hilft Ihnen Ihre Empfangsbox (Settop-Box)) mit Ihrem Kabelmodem so zu verbinden damit Sie DVB-IP Programme empfangen können.

JetSym. Programmierung in Hochsprache ST nach IEC We automate your success.

Neues vom STRIP Forth-Prozessor

3 Wie bekommen Sie Passwortlevel 3 und einen Installateurscode?

ready by drexel und weiss Technische Information

ABB i-bus KNX. Software-Information. Melde- und Bedientableau. Typ: MT 701.2

Sie können diesen Service verwenden, um fast beliebig große Dateien auch über 2 GB zu versenden.

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Dokumentenverwaltung

Verwendung eines Leica DISTO mit Bluetooth Smart mit Windows 8.1. V 1.1 April 2014

SMS/ MMS Multimedia Center

EchoLink und Windows XP SP2

DALI-16B Features ab Firmware V2.31

Was unterscheidet Microcontroller von einem PC ( Laptop ) oder einem Handy

Hinweise zur Installation der USB Treiber für Windows XP 32bit

Local Control Network Technische Dokumentation

Anleitung zur Nutzung des SharePort Utility

KIP Druckerstatus Benutzerhandbuch KIP Druckerstatus Installations- und Benutzerhandbuch

CoDeSys/WINLOC32. Profibus DP

Mikrocontroller Grundlagen. Markus Koch April 2011

Transkript:

Neues vom STRIP Forth-Prozessor Tagung der Forth-Gesellschaft April 2011 in Goslar Willi Stricker 1

STRIP Forth-System Praxisdemonstration Aufbau Hardware Aufbau Software 2

STRIP-Kernel Clocks So,S1 Clock STRIP Kernel IP Instruction pointer RP Return stack pointer SP Parameter stack pointer Memory-Bus Return-Stack-Bus Parameter-Stack-Bus Reset/Interrupt-Bus INTP Interrupt pointer 3

STRIP-Prozessor Clock Reset/ interruptsources Interrupt control registers CLOCK- Element Reset/ Interrupt Controller INTP Return stack S0,S1 STRIP Kernel RP SP IP Parameter Stack Memory/ IObus (bytes) 4

External interrupt sources Clock STRIP-Controller STRIP-Processor Internal RAM Internal ROM Memory/IO controller Internal I/Os External RAM External ROM External I/Os FPGA 5

STRIP-Controller interne Interrupt Quelle Stack Interrupt Nicht sperrbarer Interrupt, erzeugt im Kernel wird ausgelöst bei Return-Stack-Überlauf = ROV Return-Stack Unterlauf = RUN Parameter-Stack Überlauf = ROV Paraeter-Stack-Unterelauf = RUN Control-Byte: Jede Störquelle hat ein Control-Bit 7 6 5 4 3 2 1 0 XXX XXX XXX XXX ROV RUN POV PUN 6

STRIP-Controller interne Interrupt Quelle Real time Interrupt Sperrbarer interrupt, wird von einem programmierbaren Timer ausgelöst Funktion: 16-Bit-Zählregister, getaktet durch internen Takt. Das Laden mit einer Zahlt startet den Timer, er zählt rückwärts. Bei null wird der Interrupt ausgelöst. 7

STRIP-Controller Interne I/Os Eingebaute I/O-Elemente: Stack-Interrupt Timer für Real-Time-Interrupt Output Register (Parallelports) Input Register (Parallelports) Programmier- und Debug-Schnittstelle 8

STRIP-Controller Evaluation Kit Enthält: FPGA: Es enthält den STRIP-Controller In/Out-pins des FPGA, davon werden 2 für die Programmier- und Debug-Schnittstelle verwendet; 6 Tasten: Boot-pin, Reset-Pin 2 Interrupt-Pins, 2 freie Tasten; 8 Leuchtdioden; 2 Hex-Schalter; ein kleines LCD-Display. 9

STRIP-Controller Evaluation Kit Programmierund Debugschnittstelle Netzteil Power Supply FPGA STRIP Controller RS232 Pegel- Wandler 6 Tasten Display 8 LEDs PC 10

Programmier- und Debug- Schnittstelle Rechner PC (Laptop) TX RX Evaluation-kit Schnittstelle hier RS 232 Die Schnittstelle arbeitet im Halbduplex-Betrieb: Sende- und Empfangs-Betrieb zeitlich getrennt, nicht gleichzeitig 11

Programmier- und Debug- Schnittstelle Software Eigenschaften: Die Schnittstellen-Programme für den Host (Rechner, PC) und den Target (Eval-Kit, FPGA) sind (nahezu) identisch. Der Daten-Transfer erfolgt Byte-weise im Software- Handshake Der Host ist immer Master, der Target immer Slave. Der Datentransfer erfolgt asynchron im UART- Format. 12

Programmier- und Debug-Schnittstelle Arbeitsablauf bei der Ausführung eines Target- Befehls durch den Host Host arbeitet sendet Parameter => sendet Befehl (cfa) => wartet empfängt Parameter <= arbeitet weiter Target wartet empfängt Parameter empfängt Befehl (cfa) führt Befehl aus sendet Parameter wartet 13

STRIP-Controller Praxis-Demonstration Die Demonstration erfolgt auf einem Eval-Board der Firma Actel (ProASIC3/E Starter Kit) mit dem FPGA Typ A3P250 Der FPGA-Baustein enhält: 6144 Tiles (Logikeinheiten mit 3 Eingängen und einem Ausgang zur Realisierung von Flipflops oder Logikgattern), dazu 4 kb RAM. Benutzt werden davon: für den STRIP-Kernel: ca. 1700 Tiles, für den STRIP-Controller insgesamt: ca. 2500 Tiles, für die Stacks 1,5 kb RAM für den Daten-Speicher: 2,5 kb RAM 14

STRIP-Controller Praxis-Demonstration Das Bootprogramm für die Programmier- und Debug- Schnittstelle wird beim (Hardware-) Reset aufgerufen, wenn gleichzeitig der Boot-Pin aktiviert wird (Logik-Signal high ) Mit Hilfe eines korrespondierendem Schnittstellen- Service-Programms im Host-Rechner ist eine Korrespondenz zwischen beiden möglich 15

STRIP-Controller Praxis-Demonstration Über die Rechner-Schnittstelle werden auf den Target folgende Programmteile ins interne RAM geladen: Der Forth-Kernel, ein Real Time Interrupt-Programm (Taktzeit 100 ms mit Blinker), ein kleines Echtzeit Multitasking Betriebssystem, ein einfaches Blinkprogramm mit einer LED, ein manipulierbares Blinkprogramm mit 6 LEDs. 16

STRIP-Controller Praxis-Demonstration Programm-Ablauf: Drei Programme werden als einzelne Tasks definiert: Zerotask: Schnittstellen-Programm Task1: Festes Blinkprogramm Task2: Variierbares Blinkprogramm Sie werden mit Hilfe des Betriebssystems quasi-parallel abgearbeitet. (Zeitscheiben-Verfahren im Round Robin Prinzip) 17

Forth Real Time Operating System FORTOS Ziel: Aufbau eines einfachen aber vielseitig einsetzbaren Echtzeit-Multitasking- Betriebssystems 18

FORTOS Aufbau Jede Task erhält einen separaten Return-Stack und einen separaten Parameter-Stack Die vorhandenen Stacks werden auf die einzelnen Tasks aufgeteilt, jede Task erhält einen Anteil des jeweiligen Gesamtstacks Anmerkung: Dann müssen beim Task-Wechsel keine Register- oder RAM-Inhalte umgeladen bzw. auf dem Stack gesichert werden 19

FORTOS Stack-Aufteilung Zero Task Zero Task Task 2 Task 1 Task 2 Task 1 Return stack Parameter Stack 20

FORTOS Task-Allocation Block TAB (Task-Verwaltungs-Block) Jede Task erhält im ROM (Programmspeicher) einen Task- Verwaltungs-Block. Die Blöcke der Tasks sind im Programm über eine verkettete Liste verbunden. Der TAB enthält: RAM-Adresse für veränderbare Parameter Link-Adresse zur vorangegangenen Task Anfangs-Priorität Start-Adresse im Return-Stack Start-Adresse im Parameter-Stack Adresse des zugehörigen Task-Programms (Forth-Word) Der Aufruf des Task-Namens ergibt die Adresse des TAB 21

FORTOS Task-Allocation Block TAB (Task-Verwaltungs-Block) Jede Task erhält im RAM (Datenspeicher) einen zusätzlichen Task-Verwaltungs-Bereich für veränderliche Daten. Er wird über die im TAB gespeicherte Adresse aufgerufen. Er enthält: Aktueller SP (Parameter Stack-Pointer) Aktuelle Priorität Aktueller Task-Zustand 22

FORTOS Task-Allocation Block TAB (Task-Verwaltungs-Block) Task-Adresse ROM-Bereich RAM Link Prio RP SP Prg RAM-Bereich RAM-Adresse Spact Prioact stateact 23

FORTOS Task-Umschaltung Eingangsparameter: laufende Task, neue Task 3 Task-Parameter müssen gewechselt werden: IP, RP, SP Die laufende Task muss gespeichert werden: aktuelle Programmadresse => Return Stack aktuelle Return-Stack-Position => Parameter Stack aktuelle Parameter-Stack-Position => Task-RAM Die neue Task muss aktiviert werden: neue Parameter-Stack-Position <= Task-RAM neue Return-Stack-Position <= Parameter Stack neue Programmadresse aktivieren <= Return-Stack 24

FORTOS Der Task-Schalter (Forth-Programm) : TSK-SWTCH ( srce-task dest-task - ) \ ------------------------------------------ >R \ dest task >R @ SP@ SWAP! \ srce stack pointer => store R< \ dest task R< RP@ \ source return ptr fetch SWAP @ @ SP! \ dest stack ptr => store RP! \ dest return pointer => store ; \ return to destination Anmerkung: Wenn der Task-Schalter aufgerufen wird liegt die aktuelle Programmadresse (Instruction Pointer) auf dem Return-Stack! 25

FORTOS Task-Dispatcher : TSK-DISPATCH-RR ( - ) TSK-RUN @ DUP BEGIN 2+ @ DUP -1 = IF DROP TSK-LAST @ THEN DUP @ 2+ C@ READY = UNTIL DUP TSK-RUN! TSK-SWTCH ; Anmerkungen: Variable TSK-RUN enthält die laufende Task TSK-LAST letzte Task in der verketteten Liste 26