Dom > Novosti > Sadržaj

LCD Touch Screen Controller

Dec 13, 2017

Kontroler LCD ekrana osetljiv na dodir uključuje modul podataka za podatke, modul memorije (FSMC_Ctrl (SDRAM_Ctrl), modul za prikazivanje tečnog kristala (TFT_Ctrl) i modul za upravljanje dodirom (TOUCH_Ctrl), blok dijagram prikazan na slici 2.

2.png

Radni proces kontrolera LCD ekrana: mikroprocesor (STM32F407) preko FSMC magistrale za slanje podataka u FPGA, modul FSMC_Ctrl za prijem podataka, modul za kontrolu vremena SDRAM_Ctrl memorijsku memoriju SDRAM, kontrolu vremena TFT_Ctrl modula iz SDRAM-a za čitanje podataka u prikaz u realnom vremenu. Modul TOUCH_Ctrl upravlja čipom za upravljanje dodirom ADS7843 i šalje prikupljene koordinate u modul FSMC_Ctrl da čeka da ga ARM redovno čita.


1. Modul interakcije podataka

Modul za razmjenu podataka je ključ za realizaciju dvosmernog prenosa podataka, FSMC magistrala uključujući CS chip select signal i signal za pisanje WR, radni signal čitanja RD, adresna sabirnica AB 25: 0 (režim multipleksiranja), data bus DB 15: 0 i kontrolni signal za multipleksiranje adrese / podataka NADV (koristeći višestruku adresu adrese). Među njima, signal za odabir čipa CS, čitanje i pisanje operacija WR signala RD signal obično djelotvoran pri slaboj snazi. Kada piše radni signal WR za malu snagu, ARM šalje adresu i podatke tečne kristala na DB sabirnicu, adresu zakačke na rastućoj ivici NADV signala i odgovarajuće podatke na rastućoj ivici WR signala, koji se prikazuje na LCD za SDRAM keš memorijom. Kada je RD radni signal za čitanje nizak, FPGA šalje koordinate dodira na DB sabirnicu. ARM ostvaruje operaciju dodira prema koordinatnoj vrijednosti registra adresnog prostora mapiranja, a dijagram sekvence rada sabirnice FSMC prikazan je na slici 3.

3.png


2. Modul displeja sa tečnim kristalima

Prema principu prikaza ekrana tečnog kristala, signal koji kontroliše ovaj modul uglavnom uključuje signal piksela, sinhroni signal linije / polja i signal omogućavanja. Prema vremenskom zahtevu LCD displeja, LCD kontrola je dizajnirana od strane FPGA, a realizovana je kontrola linijskog signala, signala okvira i skrivenog signala.

Među njima, sekvenca vremena skeniranja kadra bazirana je na HSYNC kao referentni sat, HSYNC se koristi kao signal skeniranja linije, a VSYNC je signal za sinhronizaciju kadra, a nizak nivo je efikasan. Svaki okvir se skenira, efektivna površina prednjeg kraja VSYNC signala je ramena sa ramom (VBPD + 1), ima prednje ramilo za zatvaranje zadnjeg rama (VFPD + 1), efektivan signal VSYNC pre nego što se postigne visok nivo (VSPW + 1), navedeni signal sinhronizacije impulsa piksela. Među njima, VBPD, VFPD i VSPW se baziraju na referentnom satu HSYNC. Slično tome, za svaki red signala skeniranja nalazi se i skriveno leđa za ramena (HBPD + 1), skriveno prednje rame (HFPD + 1), širina impulsa sinhronog signala (HSPW + 1) i sat piksela VCLK kao jedinica. Za LCD ekrane sa različitim rezolucijama, tajming ekrana se razlikuje od vremena prednjeg ramena, skrivenog ramena i širine signalnog pulsiranja. Drajver na ekranu može da menja samo različite LCD ekrane promenom ovih parametara.

Kako bi se upravljački program LCD ekrana učinio različitim rezolucijama, unutar FPGA Verilog hardvera sa VCLK, VBPD, VFPD, VSPW, HBPD, HFPD, HSPW parametrima različitih LCD ekrana, koristeći adresu linije 2 FSMC linije kao kontrolne parametre LCD ekrana. Prilikom primjene, potrebno je samo promijeniti adresu registra bita za kontrolu bitnih podataka kako bismo ostvarili konfiguraciju parametara, što je pogodno za različite LCD ekrane i poboljšava prenosivost kontrolera. Dijagram sekvence vremena prikaza tečnog kristala prikazan je na slici 4.

4.png

3. Memorijski modul

Memorijski modul obuhvata modul za preprocanje podataka, SDRAM kontroler i modul keša, uglavnom za kompletiranje podataka za čuvanje podataka i prikaz podataka. Struktura memorijskog modula prikazana na slici 5.

5.png

4. Modul precesiranja podataka

Modul za preprocanje podataka uglavnom obuhvata integraciju i keširanje podataka. Pošto je brzina prenosa podataka FSMC magistrale znatno niža od radne frekvencije SDRAM-a, kako bi se riješila neusklađenost brzina između njih, podaci se keširaju pre nego što su podaci zapisani u SDRAM kako bi se sprečilo gubitak podataka.

Da bi se obezbedila korespondencija između podataka i adrese displeja, sprečiti grešku displeja, informacije o adresama i podacima prikazanim spojem, spajanje nakon što su podaci upisani u buffer FIFO (prvi u prvom, FIFO), operacija pisanja na čekanje za SDRAM.


5. Cache modul

Modul keša sadrži dve pojedinačne memorije slučajnog pristupa (RAM memorije slučajnog pristupa), čija je glavna funkcija da postignu kontinuirane izlazne podatke o operacijama ping-pong-a za dva RAM-a, princip ping-ponga kao što je prikazano na slici 6.

6.png

Da bi se realizovao neprekidan prikaz izlaznih podataka, u dubini dva interna SDRAM back-end FPGA poziva za 2048, širinu 16 RAM-a, preko jedinice za odabir ulaza ulaznih podataka "i" jedinica izlaza izlaznih podataka "za redovno prebacivanje , nakon RAM cache-a tok podataka stalno se šalje u obradu podataka procesu obrade "obradu.

Podaci o svakom frejmu na ekranu, u prvom do dvaju linijskom signalu pre dolaska sinhronog signala tokom čitanja podataka u SDRAM, RAM1 i RAM2 za unapred pisanje podataka, tako da u prvom signalu omogućavanja dolazi može uspješno pročitati prikaz RAM1 podataka koji se završava odmah iz prethodnog SDRAM-a čita sljedeće podatke linije u RAM1.

U drugim regionima za omogućavanje signala DE, RAM2 se čita i prikazuje, a proces je isti kao RAM1. Zauzvrat, RAM1 i RAM2 se čitaju i pišu naizmenično kako bi se završio kontinuirani izlaz podataka.


6. sdram kontroler

Pošto LCD ekran zahtijeva neprekidan izlaz podataka i nema prekida podataka tokom svakog signala omogućavanja, tako da je potrebno namjestiti čitanje operacije SDRAM-a kao najvišeg prioriteta. U celoj SDRAM kontroli, moramo centrirati na kontrolu čitanja podataka.

SDRAM kontroler uglavnom kontroliše inicijalizaciju, osvežavanje, čitanje i pisanje operacija SDRAM-a, a SDRAM-ova kontrola čitanja i pisanja je srž ovog modula. To je ključ za poboljšanje brzine ažuriranja podataka i smanjenje tereta ARM obrade podataka.

Stoga, dizajn SDRAM kontrolera uglavnom ima za cilj poboljšanje brzine ažuriranja podataka i smanjenje oba obima ARM obrađivanja podataka.


U cilju poboljšanja brzine ažuriranja podataka, usvoji se metod za čitanje i pisanje razmene vremena kako bi se u potpunosti iskoristilo vrijeme mirovanja koje obezbeđuje bafer podataka. Brojač se takođe podešava tokom operacije čitanja SDRAM-a. Maksimalna vrijednost brojača je M (M je piksel redova različitog tečnog kristala), tako da se efektivni podaci mogu pisati na RAM-u kako bi se čitalo pogodno.

S jedne strane, čitanje režim read read-a se koristi u procesu rada u SDRAM-u, svaki od 256 čitanih podataka još jednom čeka na sledeći pročitani dok se ne pročitaju ispravni podaci; s druge strane, prema operaciji ping-ponga postavljen je poseban brojač, maksimalna vrijednost je Y / 2 (Y za različite LCD piksele), svaki završeni 1 brojač broja ping-pong plus 1, nakupljen do maksimalne nule označava da je prikaz podataka završen, SDRAM čeka dok sledeći okvir ne prikaže podatke.

U kontrolnom kontroleru dva intervala čekanja da se oporavi data sabirnica SDRAM-a, pišete rad SDRAM-a, skratite vreme čekanja operacije pisanja SDRAM-a, operaciju pisanja pomoću režima pisanja, svaki puls 1 piše 8 podataka, efikasno ublažiti problem nastalog gubitka podataka FSCM velike brzine i ne mogu unositi podatke prilikom štednje propusnog opsega SDRAM-a, poboljšava brzinu ažuriranja podataka.

Fiksno vreme osvežavanja (N se prilagođava prema rezoluciji tečnog kristala) u prvom periodu N redova za svaki podatak okvira, koji osigurava da se sve banke u SDRAM-u mogu osvežiti u 64ms, kako bi se izbeglo sukob između operacije osvježavanja i čitanja i pisati operaciju.


Da bi se poboljšala brzina ažuriranja ekrana, smanjiti opterećenje obrade podataka ARM tečnih kristala, biće u skladu sa adresom memorijske adrese Buper prostor je podeljen na 4 sloja, svaki sloj ima 2MB, SDRAM kontroler preko multi SDRAM multi bafera da bi se postigao dizajn hardverskog akceleratora, njegov radni princip kao što je prikazano na slici 7.

7.png

Ubrzivač realizuje prilagođenu logičku kontrolu kroz prilagođene instrukcije i tražne tabele i postiže različite operacije FPGA na podatke, kao što su obavljanje složenih matematičkih operativnih funkcija, prenos podataka sa jednog mesta na drugo i više puta izvršavanje iste operacije.

U procesu prikaza tečnog kristala, s jedne strane, SDRAM će biti podeljen na 4 nivoa, Bank1 kao dno, a Bank2, Bank3, Bank4, preko multi operacije, ne mogu promijeniti osnovnu premisu ekrana, modifikovati oblast pufera kroz prvu adresu instrukcije za ažuriranje regije bez podataka ARM za slanje podataka;

Sa druge strane, SDRAM je podeljen na 4 bafera. Slanjem prilagođenih uputstava, koristimo tablu za traženje za obavljanje matematičkih operacija na različitim podacima o baferovoj zoni i realizujemo transparentan prikaz i druge funkcije.

Čuvanje podataka pre prikaznog okvira u Bank1, čuvanje podataka okvira koje će biti prikazane u Bank2 i Bank3, prikazivanje kraja poslednjih podataka okvira, prikazivanje podataka sledećeg kadra direktno kroz instrukciju, obezbeđivanje integriteta podataka u okviru prikaza i poboljšanje vizuelni efekat LCD-a. Kroz višeslojnu i višefunkcionalnu operaciju, deo obrade podataka se dodeljuje FPGA za paralelnu obradu kako bi se smanjio opterećenje ARM obrade podataka. U poređenju sa režimom serijske obrade ARM-a, to može poboljšati brzinu ažuriranja podataka.