- LiFePO4 Speicher Test    Werbung      
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 69

Thema: Intel Galileo Board

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    68
    Beiträge
    2.435
    Hallo,
    Zitat Zitat von Mxt Beitrag anzeigen
    Ansonsten kann ich den Galileo zum aktuellen Wetter sehr empfehlen. Ich habe bisher keinen anderen Bastelrechner gesehen, der so heiß wird ...
    Das alte Intel-Problem!

    Das war schon so, als AMD noch offiziell Secondsource des 8086 gefertigt hatte.
    AMD-CPUs benötigten weniger Strom, bei gleicher Taktrate wie ein Intel. Entsprechend konnte AMD seine CPUs mit einem etwas höheren Takt als Intel laufen lassen.
    Das war dann auch der Grund für die Auflösung des Vertrages zu Zeiten des Pentiums.

    Das selbe Problem gab es auch zwischen Motorola und Hitachi.
    Die 680x-Familie gab es nur von Hitachi in CMOS (630x). Zudem konnte Hitachi, mit dem selben Prozess, auch noch EPROM mit auf den Chip packen.

    OK, ist alles auch schon gegen 30 Jahre her ....
    Der grosse Rechtsstreit zwischen Motorola und Hitachi war dann Anfang der 90er Jahre.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  2. #2
    HaWe
    Gast
    ich find das Teil schon interessant - zum Thema Hitze, wie bereits gefragt:
    vllt ein Kühlkörper oben drauf?
    was nimmt man da GENAU für einen?
    was für eine Wärmeleitpaste?
    habe da bisher überhaupt keine Berührungspunkte zu.

    ps,
    besonders interessiert mich ntl auch die Sache mit den IRQ-Timern bzw den AVR Timer-libs etc.

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.09.2011
    Ort
    Hessen
    Beiträge
    707
    Für einen Kühlkörper wäre es gut, wenn die Oberfläche eben wäre. Das ist aber ein Metall-Gehäuse mit einer Erhebung in der Mitte. Sieht aber schon so aus, als ob es mit der Wärme klar kommt. Man spürt aber, wenn man einen Finger 1-2 cm drüber hält, deutlich die Hitzestrahlung.

    Wahrscheinlich lässt sich das Ding wieder erwecken, eventuell über die serielle Konsole an dem Kopfhörerstecker (!). Aber im Moment beschäftige ich mich lieber mit funktionierenden Rechnern.

  4. #4
    HaWe
    Gast
    hi,
    alles klar, danke für die Info!

    Ganz wichtig wäre für mich noch zu wissen, wie das Teil mit Timer-IRQs zurecht kommt.
    Beim Mega verwende ich AVR-Timer IRQs,
    beim Due die DueTimer lib.
    Beides brauche ich, um im 250µs-Rhytmus in Echtzeit 12-18 DPins für die Quadraturencoderstellungen abzufragen.

    Wie geht das mit den IRQ-Timern aber beim Galileo?

    Anderes Thema ist Multitasking.
    Beim Due verwende ich die Scheduler lib, weil sie einfach konfigurierbar und steuerbar ist, leider ist das MT nur kooperativ (für die geringen Anforderungen aber ausreichend).
    Bei gpp C für Linux (EV3) habe ich auch schon POSIX pthread benutzt, ist auch recht einfach zu handhaben und sogar preemptiv, hier kann man über die Zeitscheiben dann auch sehr langwierige Berechnungen pseudo-parallel und trotzdem quasi in Echtzeit durchführen (parallele Mustererkennungen über FFT und Neuronale Netze oder auch Routen-Neuplanung über Astar, die jeweils ein paar Sekunden dauern können, und trotzdem Echtzeit-Navigation per Odometrie und Sensor-Fusioning mit Kalman bei derweil fahrenden Robotern).

    Wie ist also MT bei Galileo-Sketch geregelt?
    Geändert von HaWe (10.12.2014 um 08:25 Uhr)

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.09.2011
    Ort
    Hessen
    Beiträge
    707
    Das Ding ist ein Pentium, kein Mikrocontroller. Timer IRQs wie beim AVR gibt es da wahrscheinlich gar nicht. Die Arduino-Software für den Galileo implementiert meines Wissens nach gar keine Timer. Aber einige andere Dinge, wie ein Ethernet-Shield, werden simuliert.

    Wenn er unter Windows läuft, geht natürlich Windows Multithreading. Aber mit Echtzeit ist unter Windows nicht viel zu machen.

  6. #6
    HaWe
    Gast
    zu den Timer IRQs: auch der Due ist kein AVR, sondern ein 32-bit ARM Cortex, und auch der hat Sketch Timer-IRQ-Libs!
    (#include <DueTimer.h> )
    Also müsste man doch auch für den Galileo Timer-IRQs erwarten dürfen!

    zum MT: was gibt es da fürs Galileo-Sketch? Galileo ist ja Linux-basiert und Sketch verwendet auch (verdeckt) gpp C/C++, und für Linux gibt es POSIX-Libs, die man per gpp C #includen kann -
    (#include <pthread.h>)
    was geht also hier beim Galileo mit Sketch?
    Geändert von HaWe (10.12.2014 um 08:51 Uhr)

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.09.2011
    Ort
    Hessen
    Beiträge
    707
    Lade die Arduino IDE runter und probiere es
    https://communities.intel.com/docs/DOC-22226

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    68
    Beiträge
    2.435
    Hallo,
    Zitat Zitat von Mxt Beitrag anzeigen
    Das Ding ist ein Pentium, kein Mikrocontroller. Timer IRQs wie beim AVR gibt es da wahrscheinlich gar nicht. Die Arduino-Software für den Galileo implementiert meines Wissens nach gar keine Timer.
    Das Eine hat mit dem Anderen nichts zu tun.

    - Beim Mikrocontroller ist einfach alles auf einem Chip, CPU, RAM, ROM, Und die ganze Peripherie (Ports, Timer, UART usw.).
    Der Mikrocontroller ist ein, ohne zusätzliche externe Chips, voll funktionsfähiger Computer.

    - Bei der klassische CPU ist nur die CPU auf dem Chip, evtl. noch die Takterzeugung, Memory Management, DMA und Cache. An Eingängen gibts es nur Reset, NMI, IRQ und noch welche um den Bus Freizuschalten und für WAITs.
    Hier benötigt man noch jede Menge zusätzliche Hardware um einen Computer zu haben.

    - Die Intel Quark sind SoC (Systen on Chip).
    Da ist ein ganzer PC auf dem Chip, also fast alles was sich normalerweise auf dem Mainboard befindet.
    Allerdings benötigt man noch externen Speicher um einen funktionierenden Computer zu erhalten.
    Beim Intel Galileo wird ein Intel Quark SoC X1000 verwendet.

    Welche CPU bei den 3 Varianten verwendet wird, ist grundsätzlich egal.

    Praktisch ist das Ganze nur eine Kostenfrage. Kosten verursacht hauptsächlich die Chipfläche und der verwendete Prozess. Je nach Strukturgrösse bekommt man eine bestimmte Anzahl Transistoren auf 1mm2 unter.
    Nun muss man halt entscheiden ob man mit den Transistoren lieber RAM und ROM macht und eine einfache CPU oder halt umgekehrt.

    Bei der RISC-Idee ging es eigentlich darum, eine CPU mit wenig Transistoren zu haben. Mit einem Teil der gesparten Transistoren konnte man dann noch zusätzliche Register spendieren.
    Bei der Analyse von RISC-Programmen hatte sich gezeigt, dass viele der komplexen Befehle nur selten gebraucht werden, aber natürlich jede Menge Transistoren zur Implementierung benötigen. Um Transistoren bei CISC einzusparen, verwendete man µCode. Jeder CPU-Befehl wurde als kleines internes Programm auf der CPU ausgeführt, was natürlich mehrere Taktzyklen zur Ausführung benötigt. Bei RISC werden die meisten Befehle in einem Takt ausgeführt.


    Der erste RISC-µP war eigentlich der 6502.Die Idee der ehemaligen 6801-Entwickler war es, mit möglichst wenigen Transistoren, und somit kleinem Chip, einen günstigeren Prozessor zu entwickeln. Es gab anfänglich einen 6501, welcher pinkompatibel zum 6801 war, der wurde dann aber gerichtlich verboten.
    Der 6502 brauchte dann im allgemeinen für die Befehlsabarbeitung einen Takt pro Speicherzugriff. Da die Adressberechnung nur mit 8-Bit durchgeführt wurde, musste ein interner Takt eingefügt werden, wenn sich ein Übertrag vom LSB zum MSB ergab. Wegen der einfacheren Logik, machte die CPU einfach einen Dummy-Lesezugriff mit dem Zwischenresultat der Adressberechnung.

    Dieses Verhalten bedingte dann ein Umdenken bei den Peripherie-Bausteinen. Bis dahin war es üblich, beim lesen eines Statusregisters, dieses dabei gleich zurück zusetzen. Beim 6502 konnte dies dann aber durch einen Dummy-Zugriff versehentlich geschehen Bild  
    Also musste man zum Zurücksetzen extra einen Schreibzyklus verwenden.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  9. #9
    HaWe
    Gast
    nochmal zurück zu meiner Frage, denn das ist der eigentliche Knackpunkt:

    zu den Timer IRQs: auch der Due ist kein AVR, sondern ein 32-bit ARM Cortex, und auch der Due hat Sketch Timer-Interrupt -Libs!
    (#include <DueTimer.h> )
    Also müsste man doch auch für den Galileo Timer-Interrupts erwarten dürfen- wie geht das also genau (z.B. alle 250µs) ?

    zum MT: was gibt es da fürs Galileo-Sketch? Galileo ist ja Linux-basiert und Sketch verwendet auch (verdeckt) gpp C/C++, und für Linux gibt es POSIX-Libs, die man per gpp C #includen kann -
    (#include <pthread.h>)
    was geht also hier beim Galileo mit Sketch für Multitasking?

    Was man also bräuchte, wäre eine ganz klare und eindeutige Beschreibung und Anleitung mit Beispiel-Sketchen, wie man Zimer-Interrupts und MT per Galileo-C-Sketch impementiert!

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.09.2011
    Ort
    Hessen
    Beiträge
    707
    Vielleicht habe ich mich ungünstig ausgedrückt. Das Ding ist ein PC mit Pentium Prozessor. Deshalb läuft auch Windows drauf. PCs haben keine solchen Timer wie AVRs.

    @HaWe Eine pthread.h müsste aber in der Arduino IDE sein. Dort ist ja auch der g++ mit seinen Headerdateien. Es wird ja nur die fertig übersetzte Datei ins Linux kopiert.

    Das Linux kommt übrigens in eine Datei (!) auf der SD-Karte. Da die Karte mit Fat32 formatiert ist, kann die Datei und damit der Speicherplatz des Linux nie größer werden als 4 GB. Unter Windows stehen dagegen die ganzen maximalen 32 GB einer SDHC-Karte zur Verfügung. SXDC-Karten kann die Hardware nicht verwenden.

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Intel Galileo
    Von Mxt im Forum Arduino -Plattform
    Antworten: 4
    Letzter Beitrag: 23.08.2014, 19:47
  2. Intel Galileo: Generation 2 im August
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 15.07.2014, 15:40
  3. Poster von Intels Galileo-Board
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 13.01.2014, 16:00
  4. Test: Intels Galileo-Board
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 09.12.2013, 17:00
  5. Intel MCS-96 Board
    Von TheDarkRose im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 0
    Letzter Beitrag: 21.04.2011, 07:44

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

    Werbung      12V Akku bauen