SED1356 (S1D13506) LCD, VGA, TV Graphics controller

  • Hat eigentlich schon einmal jemand den SED1356 verwendet? Der Chip ist 5V fähig und kann über ein 8bit Interface angesteuert werden (die maximale Busbreite is 16bit). Zudem ist der gesamte Ram (512k oder 2Mb 16bit) direkt adressierbar. Zudem besitzt der Chip einen BitBLT Prozessor, der auch Bereiche mit transparenten Pixeln kopieren/verschieben kann. Insgesamt schein das ein passables Teil zu sein. Derzeit wird der SED1356 noch produziert und zumindest für 2019 und 2020 ist er nicht abgekündigt. Für 68000 CPUs kann er wohl direkt konfiguriert werden und läuft dann voll synchron. Er hat 3 Taktquellen (BusClk, CLK1 und CLK2), aus denen per Teiler der Pixeltakt abgeleitet werden kann. Die Auflösung ist bis zu 800x600 16bit. Die Maximale Frequenz für den Takt is 40Mhz (BusClk, CLK1 und CLK2), wobei Wartezyklen auftreten, wenn der Pixeltakt sehr hoch ist.


    Technisches Handbuch (700 Seiten!):

    https://wwwcip.informatik.uni-…nada-7xx/docs/sed1356.pdf


    Quelle für die Dateien: https://www.mikrocontroller.net/topic/25108



    -Jonas

  • Hallo stynx,


    seit kurzem versuche ich den S1D13517 (16 bit "8080" interface) von Epson mit einen Zilog Z80380 (32 bit Z80 MPU, 16 bit Datenbus, 32 bit Adressbus linear, also 4GB RAM!) zu verheiraten, um einen 16 bit ECB-Slave fü eine TFT-LCD Grafik-Anzeige zu bauen. Die soll dann 24 bit Farbtiefe bei 800 mal 480 Punkten anzeigen.


    Sowohl für den Z80380 as auch für den Epson S1D13517 habe ich je ein Eval-Board und für den Z380 einen ANSI C-Cross-Compiler für Windows.


    Eigentlich wollte ich so eine Art CP/M Plus für den 32 bit Z80 machen und ein GSX80 dranhängen. Leider ist es so, dass man zwar das CP/M Plus noch irgendwie hinbekommt, aber für das GSX80 fehlen die Quellen. Und dann ist ja alles in 8080 Assembler geschrieben und der Z80380 ist da irgendwie weit weg davon. Er ist zwr 100% 8080-kompatibel, aber wer will schon den 32 bitter mit 8080 Befehlen ausbremsen?

    Also mangels GSX80-Softwarequellen und da ich keine Lust/Zeit/Muße etc. pp. hatte, alles zu Fuss von Null auf zu programmieren, habe ich mir in Dänemark (!) bei Firma RAM Tex eine grafische Quellcode-Bibliothek für ANSI-C gekauft, die auf den S1D13517 zugeschnitten ist. Damit kann man sich dann ein eigenes GUI stricken.


    Deinen Prozessor Epson SED1356 bzw. S1D13506 kenne ich zwar nicht, aber vielleicht findest Du ihn ja unter RAM Tex's Anwendungen:


    https://www.ramtex.dk/products/products.htm


    Vielleicht hilft es Dir ja irgendwie.


    MfG


    HCS

  • Der SED1356 ist memory mapped und erlaubt 800x600px inkl. BitBLT engine. Er hat einen integrierten VGA-Ausgang und sogar einen Video/Composite Ausgang. Leider gibt es dafür keine leicht erhältlichen Bibliotheken, das ist aber aus meiner Sicht auch nicht wirklich nötig, da man ja die Pixel direkt im Speicher setzten kann. Text muss man manuell generieren bzw. kann auch die BitBLT engine nutzen um Textblöcke aus dem Speicher zu kopieren. Der SED1356 ist ein wenig wie ein Atari ST Grafikmodus auf Steroiden, ohne zu modern zu werden ;-)


    Von Yamaha gibt es sogar 32bit memory mapped Grafikcontroller mit Sprites und BitBLT engine.


    -Jonas

  • Ich habe übriges bei Fujitsu noch einen coolen GDC gefunden: MB87P2020. 1Mb embedded, RamDAC embedded und 16/32bit Interface (auch in Byte-Häppchen adressierbar). Memory mapped und 5V tolerant. zudem ein 16bit digitaler Video Eingang, der per overlay mit Skalierung und Transparenzen eingeblendet werden kann. 50Mhz max pixelate für den DAC. Das Teil sieht schon nett aus.

    https://www.fujitsu.com/us/pro…miconductor/gdc/products/

    https://www.fujitsu.com/us/pro…gdc/products/jasmine.html

    http://www.fujitsu.com/downloa…/ss-mb87p2020-rev2.10.pdf


    andere Controller:

  • klingt ja schwer nach Grafikkarte für den MFA Computer ...

    Ich habe jetzt mal ein bisschen weiter gelesen und finde zwar 8 bit als Zugriffsmöglichkeit für das Host-Interface aber es wird nirgendwo konkret beschrieben. Immer nur 16 oder 32bit. Der SDRam wird mit 100Mhz betrieben und das Host-Interface kann wohl mit bis zu 50Mhz ohne wait-states auf den Ram zugreifen. 64Mhz ist für das Host-Interface maximum. Die Fähigkeiten mehrere Layer (4 aktive von 16 im Speicher) anzuzeigen und verschieben/skalieren zu können ist schon nicht schlecht.

    Beim Schreiben kann man das gewümschte byte selektieren, beim Lesen im 16bit modus scheinbar nicht. Eventuell müsste man da 2 Treiber zum selektieren zwischenschalten? Komischerweise ist auch A0 (A0-A20=2Mx16 = 4MiB?) vorhanden, das bei der Konfiguration keinen Sinn ergibt... Auch finde ich wenig infos über das konkrete PCB layout (entkoppeln, Masse Layer usb.)

  • (WikiP) ... Der Name Jasmin stammt vom Namen der Pflanze Jasmin, der im 16. Jahrhundert dem persischen Yasaman (‚die Blume‘) entlehnt und ins Spanische übertragen wurde. Er bedeutet ‚Sinnbild der Liebe‘. Der Name steht für Schönheit, Reinheit und Ordnung.