Forum: Mikrocontroller und Digitale Elektronik parallel 8bit zu 16Bit/24bit Logik-IC?


von Philipp K. (philipp_k59)


Lesenswert?

Moin,

ich suche ein Logik IC um irgendwie 4-8 Input Pins zu Parallelport mit 
16/24 Outputs hinzubekommen. Das sollte so bis 80Mhz funktionieren.

Also bisher habe ich den 74hc323 und ähnliche PIPO Schieberegister 
gefunden. Irgendwie erscheint mir das nicht die Lösung. außerdem 
verliert man zuviele Takte beim Schieben.

Ich dachte eigentlich das es aus der alten Computerzeit so 
8Inputs/2Enables zu 16 Outputs geben müsste.. so eine Art 8 zu 16 
Schieberegister für ("Bus-Segmente"). Meine so etwas mal in einem 
Schaltplan gesehen zu haben.

Gruß, Philipp.

von Karadur (Gast)


Lesenswert?

8Bit Latch x2/3

von Der Zahn der Zeit (🦷⏳) (Gast)


Lesenswert?

Karadur schrieb:
> 8Bit Latch x2/3
Ja - natürlich! Oder ein 8-Bit Register. Aber die Lösung ist so simpel, 
dass du auch von alleine darauf gekommen sein müsstest. Also vermute 
ich, dass es noch irgendeine Anforderung gibt, die wir nicht kennen(?).

von Horst (Gast)


Lesenswert?

Xilinx Ultrascale mit Xilinx Port-Extender IP sowie BiDir-Latch IP in 
Vitis rasch zusammengeklickt.

von Peter D. (peda)


Lesenswert?

Mit 2 Stück 74AC573 kannst Du 2* 8Bit latchen und die 3. 8Bit läßt Du 
dann direkt durch, ergibt insgesamt 24Bit.

Solls bidirektional sein, dann 2 Stück 74F543.

Philipp K. schrieb:
> Also bisher habe ich den 74hc323

Den kann ich nirgends finden.

von Erich (Gast)


Lesenswert?

Philipp K. schrieb:
> 74hc323 und ähnliche PIPO Schieberegister

74hc323 ist sehr ungewöhnliches Teil, gängiger ist der 74hc299
https://datasheetspdf.com/pdf-file/446386/STMicroelectronics/M74HC323/1

> Das sollte so bis 80Mhz funktionieren.
Das wird mit "HC" nicht gehen.
Evtl. "AC" oder die Stromfresser "F".

Aber die Lösung für den TO ist vermutlich sowieso was anderes.

Gruss

von Philipp K. (philipp_k59)


Lesenswert?

Erich schrieb:
> Aber die Lösung für den TO ist vermutlich sowieso was anderes.

also ich möchte unter anderem eine 8080 8/16Bit LCD Ansteuerung mit 
wenig Pins nutzen.. angenommen ich habe nur 6 Pins frei, das 
Controllereigene SPI kann nur 40Mhz, zuwenig Datenrate.. aber die GPIO 
kann mit 80Mhz Ports setzen.. Dann würde ich versuchen mit einer Art 
"Quad-SPI" oder parallelen 6 Pins die 5 Steuerleitungen und 8/16 
Datenleitungen zu setzen.

von Thomas Z. (usbman)


Lesenswert?

Philipp K. schrieb:
> aber die GPIO
> kann mit 80Mhz Ports setzen.. Dann würde ich versuchen mit einer Art
> "Quad-SPI" oder parallelen 6 Pins die 5 Steuerleitungen und 8/16
> Datenleitungen zu setzen.

naja beim Versuch wirds auch bleiben....
Ports mit 80MHz der war gut

von Philipp K. (philipp_k59)


Lesenswert?

Thomas Z. schrieb:
> naja beim Versuch wirds auch bleiben....
> Ports mit 80MHz der war gut

ausprobieren, kann ich messen.. Ich glaube ich habe so etwas gesucht, 
"Latch" war womöglich mein fehlender Hinweis..

Onsemi74LCX16373/D
https://www.onsemi.com/design/resources/design-resources/datasheets?part=74LCX16373/D

von vor Ehrfurcht erblasst (Gast)


Lesenswert?

Philipp K. schrieb:
> Dann würde ich versuchen mit einer Art
> "Quad-SPI" oder parallelen 6 Pins die 5 Steuerleitungen und 8/16
> Datenleitungen zu setzen.

Dann mach mal, und zeige uns das Ergebnis.

von Philipp K. (philipp_k59)


Lesenswert?

vor Ehrfurcht erblasst schrieb:
> Dann mach mal, und zeige uns das Ergebnis.

Neue Idee ist jetzt 4x4bit normales Schieberegister mit gemeinsamen 
Latch und Enable so könnte ich vielleicht mit 6 Leitungen schon ein 
wenig mehr Datendurchsatz erreichen als mit 11 Leitungen für 16/24bit.

von Karadur (Gast)


Lesenswert?

evtl. 74AHC595

von Philipp K. (philipp_k59)


Lesenswert?

Karadur schrieb:
> evtl. 74AHC595

Seriell selbst hat zuwenig Datendurchsatz sonst könnte ich ja gleich ein 
SPI Display nehmen. Okay, ich glaube Xilinx ist die schnellste 
Variante.. wobei ich das erstmal mit einem Blue oder Blackpill als 
Mid-Controller versuchen werde.

Letzte Idee wäre ein Quadspi to parallel expander in Logik. aber ich 
glaube das ist den Aufwand nicht wert. Man müsste als QSPI Slave mit dem 
Dual 4bit SR 4015 die Latches automatisch jede 4. Clock mit einem 
Counter generieren. Das ist aber bestimmt schwieriger und Sync etc. 
würde da auch noch fehlen.

: Bearbeitet durch User
von Oberförster Hubertus (Gast)


Lesenswert?

Horst schrieb:
> Xilinx Ultrascale mit Xilinx Port-Extender IP sowie BiDir-Latch IP in
> Vitis rasch zusammengeklickt.

Das ist wohl die zeitgenössische Variante von "Auf Spatzen mit einer V2 
geschossen"    ;-)

von Philipp K. (philipp_k59)


Angehängte Dateien:

Lesenswert?

Oberförster Hubertus schrieb:
> Das ist wohl die zeitgenössische Variante von "Auf Spatzen mit einer V2
> geschossen"    ;-)

Jo sehe ich auch so, ich habe hier mal eine Logik Idee mit 3 ICs für 
einen qspi Slave angehängt.. ich befürchte da könnte es Timingprobleme 
geben, habe da leider nicht so die Ahnung obwohl ich das mitte der 90er 
noch büffeln musste.

im simulator funktioniert das :D

EDIT: Das Timingproblem wäre halt ob alle Outputs schon valide sind wenn 
das write Bit vom LCD erkannt wird.

: Bearbeitet durch User
von Andy S. (bastler01)


Lesenswert?

Philipp K. schrieb:
> Moin,
>
> ich suche ein Logik IC um irgendwie 4-8 Input Pins zu Parallelport mit
> 16/24 Outputs hinzubekommen. Das sollte so bis 80Mhz funktionieren.
> Gruß, Philipp.

Ha, bis 80 MHz - lese mal die Datenblätter von TTL-IC's durch. Dann 
sollte sowieso kein74HC genommen werden. Haben eine sehr hohe 
Schwingneigung.
Auserdem sind die langsamer wie ein 74LS-Typ.

von MaWin (Gast)


Lesenswert?

Oberförster Hubertus schrieb:
> Das ist wohl die zeitgenössische Variante von "Auf Spatzen mit einer V2
> geschossen"    ;-)

Bloss wo meinst du kommt sein

Philipp K. schrieb:
> eine 8080

Philipp K. schrieb:
> SPI kann nur 40Mhz, zuwenig Datenrate.. aber die GPIO kann mit 80Mhz
> Ports setzen.

8080 mit 80 MHz her. Wohl auch nur im FPGA.

Und was nützt ihm 80MHz Portzugriff, wenn er auch Handshake-Signale 
setzen muss

8bit Daten hin  Clk high, Clk low, nächste 8 bit Daten hin, deren Clk 
high, Clk low, letzte 8 bit Daten hin, globales Strobe high und low, 
sind schon nur noch 8MHz Datenrate.

Warum ein System mit GPIO nicht gleich 24 bit auf 3 Ports präsentieren 
kann und dann nur globales Strobe high und low macht, also 16 MHz 
Übertragung, erklärt sich vielleicht in mangelnder Pinanzahl.

Na ja, noch dutzende Salamischeiben bis die Wurst aus der Pelle kommt.

von Philipp K. (philipp_k59)


Lesenswert?

Andy S. schrieb:
> Ha, bis 80 MHz - lese mal die Datenblätter von TTL-IC's durch.

ich würde die weiterentwickelten HIGHSPEED Varianten von NXP nehmen 
(50Mhz, bzw der 595 sogar "typical" 100Mhz) die 74er waren ja nur für 
die Logik im Schaltplan.

MaWin schrieb:
> Und was nützt ihm 80MHz Portzugriff, wenn er auch Handshake-Signale
> setzen muss

Ich muss zugeben da hatte ich etwas hoch gegriffen für übliche MCUs.. 
daher bin ich auf das vorhandene 40Mhz Quadspi gekommen.

Das typische LCD 8080/8060 hat in der normalen Variante gerademal 
8/16bit Bus-Daten, Read/Write und Command/Data.. der Rest wie CS muss 
auf einen normalen pin.

Ich hatte schon gesehen da ses FPGA im TQFP32 gibt.. das wäre ja auch 
noch eine IDEE.. das wäre dann nicht so oversized und ich kann das 
selbst ätzen, sonst könnte ich auch mein STM32F4 Discovery rausholen und 
direkt die LCD Unterstützung nutzen :D das wäre aber zu einfach.

von Uwe G. (scd)


Lesenswert?

Philipp K. schrieb:
> Das typische LCD 8080/8060 hat in der normalen Variante gerademal
> 8/16bit Bus-Daten, Read/Write und Command/Data.. der Rest wie CS muss
> auf einen normalen pin.

Wo ist das Datenblatt des LCD? Nur weil es parallel angeschlossen wird, 
muss es nicht schnell sein. Grafisch? Wenn nein, ist Dein ganzer Aufwand 
ohnehin Quatsch.

Also bitte die nächste Salamischeibe. . . .

von Rainer V. (a_zip)


Lesenswert?

Uwe G. schrieb:
> Wenn nein, ist Dein ganzer Aufwand
> ohnehin Quatsch.

Ja, genau das...
Rainer

von Toto mit Harry (Gast)


Lesenswert?

Uwe G. schrieb:
> Also bitte die nächste Salamischeibe. . . .

Du bist ne Salamischeibe..

Ich kann Displays ansteuern a-z spi, parallel, seriell, 8 und 16 Bit 
parallel sogar mit eigenem Code. Habe eigene Arduino Libs für Displays, 
eigene Tools für Bilderkonvertierung und kenne einige Datenblätter so 
gut wie auswendig..  SSDxxx,Ilicxxx,Raio.

Also da kann man mir nicht mehr helfen.

Das weicht auch vom Thema ab und ich habe mir überlegt was nicht allzu 
viel mehr Pins als spi hat und schneller ist.. 4 spi.. wobei die gpio 
max Frequenz der einzige Stolperstein ist. Damit ist das Thema erledigt. 
Ich habe auch schonmal einen midcontroller mit Stm32 angefangen also 
avr->stm32->TFT.. aber dann fand ich das muss der Controller selbst 
können ;)

Gruß

von Axel S. (a-za-z0-9)


Lesenswert?

Philipp K. schrieb:
> Das typische LCD 8080/8060

Was soll das eigentlich sein?

Was ich kenne, ist ein 8080 kompatibles Parallel-Interface; z.B. zu 
finden am HD44780. Was ein typischer Textmode LCD-Controller wäre. Oder 
auch am ST7920, der geht (auch) für Grafik-LCD.

Nur braucht man für den gerade mal 8 Datenbits (4 reichen auch) und 3 
(minimal 2) Steuersignale. Und am "schnellsten" Pin des Interface kann 
man mit maximal 2MHz wackeln, was oft auf 1MHz begrenzt wird. Adressen, 
gar 16 Bit braucht man für die Ansteuerung eines Displays gleich gar 
nicht. Und auch die 80Mhz liegen dann knapp zwei Größenordnungen zu 
hoch. Gern auch 3 oder 4, denn eine Untergrenze gibt es für das 
Taktsignal nicht.

von fchk (Gast)


Lesenswert?

Philipp K. schrieb:
> Erich schrieb:
>> Aber die Lösung für den TO ist vermutlich sowieso was anderes.
>
> also ich möchte unter anderem eine 8080 8/16Bit LCD Ansteuerung mit
> wenig Pins nutzen.. angenommen ich habe nur 6 Pins frei, das
> Controllereigene SPI kann nur 40Mhz, zuwenig Datenrate.. aber die GPIO
> kann mit 80Mhz Ports setzen.. Dann würde ich versuchen mit einer Art
> "Quad-SPI" oder parallelen 6 Pins die 5 Steuerleitungen und 8/16
> Datenleitungen zu setzen.

Dann hast Du den falschen Controller gewählt und solltest einen mit mehr 
Pins nehmen. Oder gibts da noch eine Salamischeiben-Randbedingung, warum 
gerade das nicht geht?

fchk

von PhilippK_59 (Gast)


Lesenswert?

fchk schrieb:
> Oder gibts da noch eine Salamischeiben-Randbedingung, warum gerade das
> nicht geht?

Nee, es geht um die Sache im Betreff und keine Anfängertipps wie was ist 
ein 8080 etc. oder dann nimmt man die richtige Mcu.

Es ist ja kein Projekt an sich. Ich habe mir jetzt alle Logik ICs 
bestellt um als Versuch einen Quadspi Slave nach parallel aufzubauen. 
Nur weil die Idee interessant ist... gibt ja auch LCD Displays mit 
Schieberegister als spi Onboard.

Axel S. schrieb:
> Was soll das eigentlich sein?

Ich meinte eigentlich nur ein TFT Display mit Parallel Interface.. ich 
kenne das nur aus den Datenblättern da steht meistens 8080, ja 
irgendwann habe ich mir das auch schonmal genauer angeschaut. Ja ist mir 
bekannt wie man die ansteuert,  ist aber bei den gängigen Displays  z.B. 
TFT 480*320 eben vorhanden, Data/command, r/w, 8/16 Daten. Habe ich auch 
schonmal angesteuert, also alles kein Problem.

Also ein 8bit Shiftregister ist nunmal Wayne wenn man sowieso spi als 
Hardware bedienen kann. Macht ja keinen Sinn.

Karadur schrieb:
> 8Bit Latch x2/3

Ja so die Richtung war eine sinnvolle Antwort.

Gruß

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.