Il display LCD presenta molti vantaggi, come bassa tensione di funzionamento, basso consumo energetico, grande quantità di informazioni sul display, lunga durata, facile integrazione, facile trasportabilità e basso inquinamento da radiazioni elettromagnetiche. È emerso in tecnologia di visualizzazione ed è ampiamente utilizzato nei telefoni cellulari, nei prodotti PDA e negli strumenti portatili. Strumenti e altri prodotti e dispositivi elettronici portatili.
Il circuito di pilotaggio LCD è una parte importante del sistema di visualizzazione a cristalli liquidi ed è un circuito di interfaccia tra il computer (o MCU) e il pannello a cristalli liquidi. La sua funzione principale è quella di modulare la fase e il valore di picco del segnale potenziale che viene emesso dagli elettrodi del dispositivo di visualizzazione a cristalli liquidi. Frequenza e altri parametri per stabilire il campo elettrico del convertitore di frequenza. A causa della grande differenza nelle specifiche LCD, il metodo convenzionale consiste nello sviluppare un circuito di guida dedicato per ciascun tipo di LCD. Un tale design fa perdere tempo e ha scarsa riusabilità. Per questo motivo, è necessario progettare un nucleo IP che possa essere utilizzato per la maggior parte dei circuiti di azionamento LCD su piccola scala ed è necessario risolvere questo problema eseguendo il multiplexing del core IP. Attualmente, solo Yu-Jung Huang e altri della I-Shou University hanno progettato core IP in grado di pilotare LCD di dimensioni diverse per ottenere questa funzione incorporando microprocessori incorporati nel sistema. Tuttavia, questo microprocessore incorporato rende il sistema più complesso e più costoso. Il core IP del circuito di pilotaggio progettato per pilotare LCD di diverse dimensioni è implementato usando FPGA, che può efficacemente superare gli svantaggi della complessità del sistema circuitale e dei costi elevati.
Struttura del sistema core IP
Figura 1 Struttura del sistema core IP
Diagramma di disposizione della cascata di core IP
Figura 2 Disposizione della cascata di nuclei IP
Risultati della simulazione della funzione di controllo della linea
Figura 3 Risultati della simulazione della funzione di controllo della riga
Risultati della simulazione della funzione di controllo della colonna
Figura 4 Risultati della simulazione della funzione di controllo della colonna
Specifiche di progetto
Per soddisfare le reali esigenze della maggior parte delle più piccole applicazioni di display LCD di oggi, il chip di circuito IP del circuito LCD progettato in questo documento ha 64 uscite COM (riga) e 64 SEG (colonna) e ha un 8 bit ad alta velocità interfaccia MCU parallela. E l'interfaccia seriale, il chip contiene la RAM che memorizza i dati del display e ha 10 terminali di controllo appositamente progettati, in grado di controllare in modo comodo e flessibile. Ha principalmente le seguenti funzioni principali:
1. Fornire il segnale di temporizzazione della scansione e visualizzare i dati del segnale per il display a cristalli liquidi;
2, supporta la connessione diretta con l'MCU sotto forma di un bus;
3, può pilotare diverse scale di LCD (n & TImes; m), n può essere un valore continuo (n = 0 ~ 63), m può prendere solo un multiplo di 8 (m = 8k, k prendere un numero naturale);
4. Supporta la cascata tra i core IP per pilotare LCD più grandi, supportando fino a 4 core inter-bank in cascata IP e cascata inter-column;
5, in grado di fornire una gamma più ampia di tensione di uscita del convertitore per adattarsi a diversi dispositivi LCD;
6, per fornire l'immagine nell'immagine, la visualizzazione a schermo diviso e altre funzioni.
Design del nucleo IP
In questo documento, secondo il metodo di progettazione "top-down", prima dividere il chip in funzioni gerarchiche, facendo riferimento all'esperienza di progettazione del chip driver LCD esistente, e combinare il metodo di progettazione "dal basso verso l'alto" per progettare alcuni moduli. Infine, secondo il framework di progettazione del sistema, ciascun modulo è coordinato e la verifica funzionale complessiva del chip viene eseguita in modo da soddisfare i requisiti delle specifiche di progettazione.
struttura del sistema
La struttura del sistema core IP progettato in questo documento è mostrata nella Figura 1. Il nucleo IP è composto principalmente dai seguenti moduli: modulo line scan e driver del segnale colonna, level shifter, contatore dell'anello numerico preselezionabile, modulo latch dati, logica di controllo modulo, display dati RAM e modulo di decodifica indirizzo, modulo di interfaccia MCU. Alcuni di questi moduli di grandi dimensioni possono anche essere suddivisi in diversi sottomoduli.
Ogni modulo design
Modulo di interfaccia MCU
Il modulo di interfaccia MCU è un'interfaccia per la comunicazione tra un core IP e un controller esterno (MCU) ed è un canale per la trasmissione dei dati. L'MCU scrive comandi, legge lo stato o visualizza i dati sul chip del driver LCD attraverso questa interfaccia. Allo stesso tempo, l'interfaccia accetta anche il controllo del decodificatore di comando, in modo che le operazioni di lettura e scrittura e quelle interne siano combinate. Il chip è implementato da una logica di combinazione interna più complessa e da circuiti logici sequenziali, che possono essere compatibili con i due segnali di controllo MCU mainstream e supportano modalità di funzionamento a due dati seriali / paralleli.
Il modulo include diversi sottomoduli comunemente usati nel modulo di interfaccia MCU del circuito di pilotaggio LCD comune esistente, come un sottomodulo di bus dati (8 bit), un sottomodulo di rilevamento stato occupato, un sottoprocesso di controllo lettura / scrittura -modulo e un sottomodulo di rilascio MCU. È stato aggiunto un nuovo sottomodulo di controllo a cascata di righe e colonne in cascata. Il bus dati è utilizzato principalmente per gli scambi di dati interni ed esterni; il sottomodulo di rilevamento dello stato occupato viene utilizzato per determinare lo stato dell'MCU, genera un segnale di occupato del sistema per coordinare le operazioni di lettura e scrittura del segnale e ricevere segnali di ripristino interno / esterno; il sottomodulo di controllo di lettura e scrittura è utilizzato per generare correttamente La sequenza di controllo di lettura-scrittura; La funzione del sottomodulo di rilascio MCU avviene tramite la combinazione logica, nel chip per eseguire il processo di "lettura-modifica-scrittura", rilasciare l'MCU in modo che l'MCU possa eseguire altre operazioni contemporaneamente; e il nuovo controller in cascata La funzione principale del modulo è ottenere la concatenazione di righe e la concatenazione di colonne tra i core IP. Possono essere supportate fino a 16 concatenazioni IP (4 righe e 4 file ciascuna). CS0 ~ CS1 sono porte di controllo in cascata e CS2 ~ CS3 sono livelli di colonna. Controllo congiunto Ad esempio, supponiamo che ci sia un LCD (128 e TImes; 256), che può essere pilotato da 8 core IP. Quando si eseguono le impostazioni, CS è 0000, 0001, 0010, 0011, 0100, 0101, 0110, 0111, che possono essere 2 e TImes; Guida l'array core IP. Il diagramma schematico della sua disposizione è mostrato in Figura 2.
Visualizza la RAM dei dati e il modulo di decodifica degli indirizzi
Questo modulo viene utilizzato principalmente per memorizzare i dati da visualizzare e funge da buffer tra l'interfaccia MCU e il circuito del driver del segnale per garantire l'uscita stabile dei dati del display.
Il modulo include due sottomoduli: un array RAM e un decodificatore di indirizzo per la memorizzazione dei dati di visualizzazione. Innanzitutto, l'indirizzo di colonna è fornito dal circuito di indirizzo di colonna, una colonna di celle di memoria RAM a 8 bit è selezionata dal decodificatore di indirizzo di colonna e l'MCU legge / scrive attraverso l'interfaccia; quindi, il decodificatore dell'indirizzo di riga esegue la scansione della RAM in unità di righe. In combinazione con il circuito di latch dei dati del display, l'intera fila di dati può essere emessa e trasmessa al display a cristalli liquidi per la visualizzazione tramite il circuito di pilotaggio dell'elettrodo.
Modulo di blocco dati
Il modulo contiene due sottomoduli: il sottomodulo di blocco del controllo del numero di colonna e il sottomodulo del latch di unità. Il sottomodulo di controllo del numero di colonna è composto da k latch di dati paralleli a 8 bit. La funzione principale è quella di bloccare i dati sul bus dati e inviarli dalla RAM alla RAM sotto il segnale di controllo e il segnale di clock del modulo logico di controllo. I segnali dei dati di visualizzazione sul bus dei dati dei bit sono rispettivamente bloccati nei corrispondenti latch dati a 8 bit. I dati a 64 bit richiedono 8 volte e 8 bit ogni volta. Il sottomodulo del latch driver è un latch di unità a 64 bit formato da 64 latch a 1-bit collegati in parallelo. Il suo ruolo consiste nel mettere i 8 dati 8-bit superiori sotto il segnale di controllo e il segnale di clock del modulo logico di controllo. I dati m-bit trasmessi nel latch vengono bloccati tutti in una volta e quindi immessi nel modulo driver dell'elettrodo del segnale della colonna.
Modulo logico di controllo
Il ruolo principale di questo modulo è controllare la trasmissione dei dati del segnale e selezionare il numero di linee di segnale della colonna. Il sottomodulo di blocco del controllo del numero di colonna, il sottomodulo di blocco dell'unità e il generatore di clock possono essere controllati dall'ingresso di controllo del numero di colonna M per ottenere le funzioni applicabili a diverse dimensioni di LCD. In base alle esigenze, immettendo valori diversi all'ingresso di controllo del numero di colonna M, controlla quanti blocchi di controllo del numero di bit si trovano nello stato operativo e le altre unità di latch sono impostate sullo stato di riposo. I dati nella RAM di dati di visualizzazione vengono bloccati nel latch di controllo del numero di colonna corrispondente attraverso il bus di dati a 8 bit durante il ciclo di lavoro, e quindi bloccati nel dispositivo di blocco di azionamento per l'azionamento di elettrodo alla volta sotto il controllo di un segnale di orologio. Segnale di ingresso del modulo. In questo modo, il nucleo IP può implementare la funzione di controllo del numero di colonne selezionate. Quando M è "000", gli 8 bit inferiori (primo latch) del latch di controllo del numero di colonna operano, e l'altro è tutto inattivo, e gli elettrodi di colonna corrispondenti sono SEG0 ~ SEG7; quando M è "001" I 16 bit inferiori (primo e secondo latch) del fermo di controllo della colonna funzionano. Tutte le altre colonne sono gratuite. Gli elettrodi di colonna corrispondenti sono SEG0 ~ SEG15; e così via, fino a quando i latch di controllo della colonna non sono 64. Il bit registra tutto, l'elettrodo di colonna corrispondente è SEG0 ~ SEG63.
Modulo di azionamento dell'elettrodo
Il modulo comprende principalmente quattro sottomoduli: un sottomodulo di azionamento dell'elettrodo di scansione di riga, un sottomodulo di azionamento dell'elettrodo del segnale di colonna, un trasduttore di livello e un contatore dell'anello numerico preimpostato.
La funzione del level shifter è quella di convertire la tensione del segnale logico in una tensione di pilotaggio LCD reale mediante un segnale di controllo applicato e in uscita al modulo di pilotaggio in base alle reali esigenze applicative; il ruolo del sottomodulo di guida dell'elettrodo di scansione di riga è quello di fornire agli elettrodi di riga un certo periodo dell'impulso del segnale di scansione; la funzione del sottomodulo di guida dell'elettrodo del segnale di colonna è di applicare i dati dal latch all'elettrodo di colonna corrispondente e il segnale di scansione dell'elettrodo di riga per stabilire il campo elettrico di pilotaggio CA, guidando così la visualizzazione del dispositivo LCD. Il numero di contatori di suoneria che possono essere preimpostati può controllare il numero di elettrodi di scansione di riga attraverso il terminale di controllo del numero di riga N (S0 ~ S5) per adattarsi a schermi LCD di diverse dimensioni e immettere valori diversi per il terminale di controllo del numero di riga N secondo ai bisogni reali. Controlla il numero di righe per un lavoro specifico e tutti gli altri elettrodi sono inattivi. Sotto il controllo del segnale di clock dell'azionamento di linea, la scansione viene eseguita riga per riga e il ciclo viene ripetuto fino a quando non viene immesso un nuovo valore nel terminale di controllo del numero di linea N, e un nuovo numero di linea di elettrodi di linea viene scansionato in una linea- per linea. Ad esempio, quando il segnale applicato N è "011011", il numero di elettrodi di scansione è 27. Il sottomodulo di guida di scansione di riga genera un segnale di scansione progressivo sugli elettrodi di riga COM0 COMCOM26 e gli altri elettrodi di riga COM27 COMCOM63 sono tutti impostati ad un livello basso. Se il nuovo segnale applicato N è "100011", il sottomodulo di guida dell'elettrodo di scansione genera un segnale di scansione progressiva circolante sugli elettrodi di riga COM0 COMCOM34.
Implementazione del sistema core IP
In primo luogo, secondo la definizione di cui sopra e la divisione dell'intera funzione di sistema e il design di ciascun modulo, ciascun modulo di funzione è modellato separatamente dal linguaggio VHDL; in secondo luogo, sul dispositivo FPGA dell'azienda Xilinx, lo strumento EDA ISE viene utilizzato per la simulazione e la sintesi. Eseguire il debug e ottimizzare il design; quindi, utilizzare VHDL per definire il modulo di primo livello per connettere ciascun modulo ed eseguire il debugging e la verifica del sistema corrispondente; infine, ottieni un circuito driver LCD con 64 righe COM (righe) e 64 SEG (colonne), interfaccia MCU parallela a 8 bit ad alta velocità e interfaccia seriale, il chip contiene RAM per i dati di visualizzazione e può essere collegato in cascata per controllare CS per espandere la cascata per soddisfare il display LCD più grande, tramite il controllo del numero di colonna M e il numero di terminali di controllo delle righe N per adattarsi alle diverse dimensioni del display LCD.
Simulazione e verifica
Questo articolo utilizza il software di simulazione Xilinx ISE come strumento di simulazione per verificare il core IP progettato in due passaggi.
Innanzitutto, questo documento esegue innanzitutto la verifica funzionale preliminare di ciascun modulo del nucleo IP (inclusi i sottomoduli interni). Quindi, riferendosi al processo di lavoro del chip, l'intero chip viene simulato nel suo complesso. Le figure 3 e 4 mostrano i risultati della simulazione utilizzando ISE per simulare le funzioni di controllo di riga e colonna dell'intero core IP. Nella figura, CLK e CLK1 sono rispettivamente gli orologi di controllo della trasmissione di dati e gli impulsi di scansione degli elettrodi di riga del modulo di interfaccia MCU; M e N sono i terminali di controllo di selezione per gli elettrodi di colonna e di riga, rispettivamente; i due bassi e alti due bit di CS sono rispettivamente in cascata. Il controllo in cascata termina con le colonne.
I risultati della simulazione in Figura 3 e Figura 4 illustrano:
1. Quando RESET è alto, il core IP è nello stato iniziale o in chiaro; quando WRITE è alto, il core IP è in stato di funzionamento e può ricevere dati di visualizzazione.
2. Sul fronte di salita dell'orologio CLK, l'MCU scrive i dati di visualizzazione a 8 bit sulla RAM del core IP in parallelo attraverso l'interfaccia; sul fronte di salita dell'orologio CLK1, gli elettrodi di guida di scansione orizzontale emettono sequenzialmente gli impulsi di scansione e gli elettrodi di segnale di colonna inseriscono i dati nella RAM. Uscita da SEG.
3. Il numero di file di terminali di controllo può modificare il numero di righe di elettrodi analizzati. Quando il terminale N di controllo selezione selezione numero riga è "3E", viene emesso un segnale di scansione su COM0 ~ COM61. Come mostrato in FIG. 3, nel segnale di orologio della prima riga, il segnale di scansione viene emesso sull'elettrodo COM61, e l'elettrodo di riga viene scansionato riga per riga sotto il controllo del clock di guida di riga; quando viene immesso il segnale di orologio della settima riga, N diventa "22", il segnale di scansione viene emesso sull'elettrodo di riga COM33 e progressivamente decrementato. Viene eseguita la scansione progressiva di COM0 ~ COM33.
4. Il terminale di controllo del numero di colonna può modificare il numero di elettrodi del segnale della colonna. Quando il terminale di controllo di selezione del numero di colonna M è "110", l'elettrodo SEG è un'uscita a 48 bit; quando M è "010", l'uscita del SEG diventa 16 bit; quando M è "101", l'uscita del SEG diventa 40 bit. ; Quando M è "100", l'uscita del SEG diventa 32 bit.
In questo documento sono state verificate e verificate funzionalmente le funzioni di controllo del numero di colonna, controllo del numero di riga e cascading inter-core del core IP. Lo spazio limitato qui descrive solo il numero di colonna e le funzioni di controllo del numero di riga.
Conclusione
Questo documento discute il design di un core IP per chip per display LCD. Secondo l'idea di design top-down, il chip è diviso in strati e viene verificata la funzione complessiva del chip. Nella verifica funzionale del chip, questo documento adotta il linguaggio di descrizione dell'hardware VHDL per verificare la funzione logica e la relazione temporale del circuito. Il driver del display LCD adotta un design parametrico e ha una buona portabilità e può essere convenientemente applicato a varie applicazioni di sistemi di visualizzazione a schermo piatto di strumenti portatili e PDA e altri prodotti correlati.





