- fchao-Sinus-Wechselrichter AliExpress    Werbung      
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 66

Thema: RAM-Baustein

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.720
    Mit asynchronem Zugriff meinte ich Controller, die frei entscheiden, wann sie Daten zum RAM senden bzw vom RAM holen wollen. Es könnte also zufällig passiern, daß gleichzeitig von verschiedenen Controllern auf die die Steuer/Adressleitungen des RAMs bzw der Schieberegister oder D-Latches? zugegriffen wird.

    Um das zu verhindern dachte ich daran, den Controllern ein Zeitfenster zuzuordnen, in dem sie RAM Operationen durchführen dürfen. Aus Performancegründen verworfen, da eine ungenutzte reservierte Zeit einem anderen Controller verloren geht, der sie vielleicht gerade benötigt. Einen Arbiter, der den Buszugriff regelt in den Controllern selbst zu implementieren. Oder einen eigenen µC oder eine HW als Arbiter zu installieren - kleiner µC wie ATtiny24 meine favorisierte Lösung zur Zeit.

    In etwa die"c) Independent request" Methode von dieser Seite
    Über Datentransferrate habe ich noch gar nicht nachgedacht. Ein Mega328 kann mit 20Mhz getaktet werden. Ein ein Cycle Maschinenbefehl wird dann in 1/20MHz=50ns ausgeführt. zB ein OUT PORTB,r16. Die Daten müssen aber erst nach r16 gebracht werden. Ein zweiter Befehl ist da notwendig und noch weitere ...

    Ich kann gar nicht abschätzen, wie schnell ein compilierter Arduino sketch ist. Ich nutze Bascom und da wo es schnell gehen soll oder es zeitkritisch wird mache ich Assembler Routinen.

    Bin gespannt, wie es weitergeht und was das mal werden soll. Viel Erfolg!

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.690
    8-Bit programmierbare Zähler wären sinnvoll. Ich finde aber keine.

    Das Problem mit dem Beschicken von Daten und Abholen von Daten, ist - finde ich - ein organisatorisches Problem. Auf die Verarbeitungsstruktur kommt es an. Das könnte man auf verschiedene Weise regeln, denke ich. Aber so weit bin ich noch nicht.

    MfG

  3. #3
    HaWe
    Gast
    ich würde ein sternförmiges Netzwerk wählen, bei denen 1 "Server" das RAM samt aller Zugriffe allein verwaltet.
    Der Server kann dann per I2C rundrum alle "clients" abfragen, was sie zu melden haben, und dann die aktuellen r/w requests abarbeiten; dann kommt der nächste client dran.

    Aus Performancegründen wäre dann aber sicher ein Server mit hohem Takt und großem onboard-RAM die beste Lösung, also ein M4 oder gar ein Raspi.

    Sollten die Datenmengen deutlich größer sein oder werden oder auch erforderlicherweise nicht-flüchtig, könnte ein Raspi auch einen USB-Stick oder eine SSD etc. per USB verwenden.

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.720
    Zitat Zitat von Moppi Beitrag anzeigen
    8-Bit programmierbare Zähler wären sinnvoll. Ich finde aber keine.
    Es gibt 74HC161 (presetable 4-Bit binary counter), die kaskadiert werden können:
    Wird im Datenblatt erwähnt und auch in https://forum.allaboutcircuits.com/t...8/#post-853339
    Bin dort nicht registriert und bekomme den dortigen Schaltplan deswegen nicht in lesbare Größe Bild  

    Ich vermute, daß Du den Zähler für die Adresseneingabe verwenden möchtest um nicht für jede Speicherstelle immer eine komplette Adresse vom Controller übertragen zu müssen, sondern einfach per Taktimpuls an den Zähler die Adresse erhöhen möchtest um damit den RAM sequenziell beschreiben/lesen zu können?

    Wäre noch ein Stück mehr HW, die aber das Ding ein Stück schneller machen würde.

    Gruß
    Searcher
    Geändert von Searcher (26.09.2018 um 19:28 Uhr)
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.690
    Mit einem Zähler macht das durchaus Sinn. Denn das ist das, was man in der Regel bei der Datenverarbeitung macht: Adressen hintereinander auslesen.

    Ich bin aus den 4 Bit Countern bisher nicht schlau geworden. Die ich gefunden hatte, waren Abwärtszähler. Man muss eine Andresse anlegen können und mit einem Taktimpuls den Zähler laden, der Stand erscheint am Ausgang und wird mit jedem Zähltakt erhöht - so sollte das sein.

    Scheint so mit den 74HC161 zu funktionieren. Nur dass es hier 4-Bit Zähler sind. Macht dann bei 20 Adressleitungen 5 ICs. Da muss man dann schauen, wie der bautechnische Aufwand ist. Der Vorteil von Zähler-ICs ist, dass die um ein Vielfaches schneller zählen können und die Adresse muss nicht extra über Zwischenspeicher zum RAM übertragen werden, weil alles in einem Baustein schon drin ist.

    Dann werde ich jetzt mal schauen, ob das Austauschen eines Atmega328 und zwei 8-Bit-Puffern, den Aufwand von zwei zusätzlichen ICs rechtfertigt.

    Vielen Dank so weit, dafür!

    MfG
    Geändert von Moppi (26.09.2018 um 21:27 Uhr)

  6. #6
    Super-Moderator Lebende Robotik Legende Avatar von Manf
    Registriert seit
    30.01.2004
    Ort
    München
    Alter
    73
    Beiträge
    13.186
    8-Bit programmierbare Zähler wären sinnvoll. Ich finde aber keine.
    Wenn solche gemeint sind:
    https://www.google.com/search?client....0.3wnNNmUjr8o
    http://www.ti.com/lit/ds/symlink/sn54as869.pdf

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.690
    Ich habe mal was zum 74HC161 zusammengebastelt. Zwecks Beschaltung und Verhalten:

    Bild  

    Das war das erste brainstorming heute am Morgen. Ich weiß noch noch nicht, ob es so korrekt ist.

    MfG


    Nachtrag:

    @Manf, gerade habe ich eine Bestelllung für die 4-Bit Counter getätigt Bild   - menno!
    Allerdings Reichelt hat die 8-Bit Counter gar nicht. Conrad leider auch kein Treffer. Oder ich Suche falsch..

    @searcher, was die Koordination der Zugriffe angeht, habe ich mir gestern Abend noch Gedanken gemacht. Das Einfachste wird sein, wenn sich alle "Teilnehmer" bei einem "Schaffner" mit einem Signal (Pin log. 1 / log. 0) anmelden und von dem "Schaffner" dann eine Signalrückmeldung kommt, dass sie mit dem Bus fahren dürfen (Signal log. 1) oder noch nicht (Signal log. 0). Wenn ein "Teilnehmer" mit dem Bus gefahren ist, meldet der sich beim "Schaffner" mit log. 0 und der "Schaffner" geht dann zum nächsten "Teilnehmer", der sich angemeldet hat und erteilt ihm dann die Erlaubnis, mit dem Bus zu fahren. Je nach Konzept könnte der "Schaffner" auch eine gültige Fahrkarte verlangen, bevor er jemanden mit dem Bus fahren lässt.
    Geändert von Moppi (27.09.2018 um 09:05 Uhr)

  8. #8
    HaWe
    Gast
    wenn du nicht den "Schaffner" (Server) selber auch schreiben lassen willst, sondern der nur dazu da ist, eine "Fahrkarte" (Token) für die Zugriffsrechte zu vergeben und weiterzureichen, kann man auch einen "Token Ring" ohne Schaffner aufbauen. Hier reicht dann jeder Client, wenn er dran war und wenn er dann fertig ist, seinen Token an den nächsten im Netwerk-"Ring" weiter, sodass immer nur max. 1 den Token als Schreibberechtigung hat.
    Aber ein Server, der die Tokens verwaltet, ist tatsächlich sicherer gegen Ausfälle und Störungen, das stimmt: es ist dann eine abgepeckte Variante meines oben skizzierten sternförmigen Server-Client-Netzes.
    Beide Systeme können sich aber dennoch leicht aufhängen:
    Der Token Ring, wenn irgendein beliebiger Client im Ring irgendwo ausfällt,
    und im Stern, wenn der Server ausfällt.
    Nur TCP/IP-Netze mit multiplen Knoten sind da ausfallsicherer.

  9. #9
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.690
    Die Teilnehmer untereinander zu verbinden, das wäre natürlich gut, weil man theor. beliebig viele miteinander verketten kann. Daran gefiel mir aber nicht, dass sich jeder Teilnehmer noch um die Absprache kümmern muss. Max. würde ich 2 Signalleitungen dafür verwenden, Eine rein und Eine raus, zum Nächsten. Bevor hier eine Entscheidung gefallen ist, muss das Signal alle Teilnehmer passiert haben. Außerdem kann man nicht ermitteln, ob ein im Ring weiter entfernter Teilnehmer, eher dran sein müsste, als andere.
    Diese serielle Kommunikation gefällt mir irgendwie auf dieser Ebene nicht, ob I2C oder was anderes. Ich möchte möglichst kurze Latenzzeiten im System, sonst macht das für mich keinen Sinn - nur wenn ich eine bestimmte Datenverarbeitungsrate erreichen würde.

  10. #10
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.720
    Zitat Zitat von Moppi Beitrag anzeigen
    @searcher, was die Koordination der Zugriffe angeht, habe ich mir gestern Abend noch Gedanken gemacht. Das Einfachste wird sein, wenn sich alle "Teilnehmer" bei einem "Schaffner" mit einem Signal (Pin log. 1 / log. 0) anmelden und von dem "Schaffner" dann eine Signalrückmeldung kommt, dass sie mit dem Bus fahren dürfen (Signal log. 1) oder noch nicht (Signal log. 0). Wenn ein "Teilnehmer" mit dem Bus gefahren ist, meldet der sich beim "Schaffner" mit log. 0 und der "Schaffner" geht dann zum nächsten "Teilnehmer", der sich angemeldet hat und erteilt ihm dann die Erlaubnis, mit dem Bus zu fahren. Je nach Konzept könnte der "Schaffner" auch eine gültige Fahrkarte verlangen, bevor er jemanden mit dem Bus fahren lässt.
    Ja, so oder so ähnlich würde ich das auch machen. Das ist der Fall c auf der Seite, die ich vorher schon mal verlinkt hatte: http://www.ques10.com/p/8794/what-is...wo-techniques/
    Da gibt es noch einen gemeinsame Bus Busy Leitung. Ist mir im Augenblick unklar, ob die wirklich gebraucht wird.

    Schade wg. den chip Vorschlägen von Manf. Als Versender fand ich bei einen für mehr als 8€ Bild   das Stück. Wird anscheinend kaum noch verwendet.

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. PLL Baustein 4046
    Von hacker im Forum Elektronik
    Antworten: 41
    Letzter Beitrag: 14.01.2009, 15:14
  2. LED Matrix Baustein
    Von karlmonster im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 07.04.2008, 19:57
  3. Suche RAM Baustein
    Von robin im Forum Elektronik
    Antworten: 10
    Letzter Beitrag: 02.01.2008, 23:16
  4. Baustein zur Echtzeitübertragung
    Von chrisse 7 im Forum Elektronik
    Antworten: 30
    Letzter Beitrag: 11.01.2006, 16:41
  5. WAS ZUM "§$?`* ist das für ein baustein ?
    Von Roll_. im Forum Elektronik
    Antworten: 4
    Letzter Beitrag: 02.09.2005, 07:57

Berechtigungen

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

    Werbung      Labornetzteil AliExpress