Tải bản đầy đủ (.docx) (56 trang)

Đồ án cơ sở giới thiệu về ngôn ngữ VHDL và FPGA

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.04 MB, 56 trang )

Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
GI I THI U TÀIỚ Ệ ĐỀ
tài này trình bày v thi t k h th ng x lý nh Video trên FPGA (Cyclone       
II) bao g m các thành ph n: Thu nh n và s hóa tín hi u Video Analog, x lý nh      
Video s , hi n th lên VGA.   
Trong đ tài này ngoài Cyclone II các thành ph n tích h p trên Kit DE2 mà ta s s    
d ng là: Chip mã hóa tín hi u Video Analog ADV7181B, SDRAM IS42S16400 đ l u   
tr và xu t frame nh h p lý, c ng VGA (chip ADV7123) đ hi n th nh lên màn hình.        
Trang 1
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
1. GIỚI THIỆU VỀ NGÔN NGỮ VHDL VÀ FPGA
1. NGÔN NGỮ VHDL
VHDL là một ngôn ngữ mô tả phần cứng (hardware description language),
mô tả hành vi của mạch điện hoặc hệ thống, từ đó mạch điện vật lý hoặc hệ thống có
thể được thực thi.
VHDL là viết tắt của VHSIC Hardware Description Language. Bản thân VHSIC
là viết tắt của Very High Speed Integrated Circuits (mạch tích hợp tốc độ cao), lần
đầu tiên được sáng lập bởi United State Department of Defense trong những năm 80,
sau đó tạo ra VHDL. Phiên bản đầu tiên là VHDL 87, lần nâng cấp sau đó có tên là
HDL 93. VHDL là ngôn ngữ mô tả phần cứng nguyên gốc đầu tiên được chuẩn hóa
bởi Institue of Electrical and Electronics Engineers (IEEE), tới chuẩn IEEE 1076.
Trong IEEE 1164, có một chuẩn được thêm vào là giới thiệu hệ thống logic đa giá trị
(multi-valued logic system).
Động cơ thúc đẩy cơ bản khi dùng VHDL (hay dùng Verilog) là VHDL là một
ngôn ngữ độc lập chuẩn của các nhà công nghệ, các nhà phân phối do đó chúng có
khả năng portable và kế thừa cao (reusable). Hai ứng dụng trực tiếp chính của
VHDL là trong mảng các thiết bị logic lập trình được (Programmable Logic Devices)
(bao gồm CPLDs – Complex Programmable Logic Devices và FPGAs – Field
Programmable Gate Arrays). Mỗi khi mã nguồn VHDL được viết, chúng có thể được
dùng để thực thi mạch điện trong các thiết bị lập trình được (từ Altera, Xilinx,
Almel, ..) hoặc có thể gửi đến các xưởng chế tạo các chíp ASIC. Hiện này, rất nhiều các


chip thương mại phức tạp (ví dụ như các microcontrollers ) được thiết kế dựa trên
cách tiếp cận này.
Một điều chú ý về VHDL là trái ngược với các chương trình máy tính thông
thường được thực hiện tuần tự thì các câu lệnh được thực hiện song song
(concurrent). Vì lí do đó, nên VHDL thường được coi là một mã nguồn hơn là một
chương trình. Trong VHDL chỉ có các câu lệnh đặt trong PROCESS, FUNCTION, hay
PROCEDURE được thực thi tuần tự.
Một trong những tiện ích lớn của VHDL là cho phép tổng hợp mạch điện hoặc
hệ thống trong thiết bị khả lập trình (programmable devide) (PLD hoặc FPGA) hoặc
trong một hệ ASIC.
Trang 2
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
2. FPGA
FPGA (Field Programable Gate Arrays) là một thiết bị bán dẫn bao gồm các
khối logic lập trình được gọi là "Logic Block", và các kết nối khả trình. Các khối logic
có thể được lập trình để thực hiện các chức năng của các khối logic cơ bản như AND,
XOR, hoặc các chức năng kết hợp phức tạp hơn như decoder hoặc các phép tính toán
học. Trong hầu hết các kiến trúc FPGA, các khối logic cũng bao gồm cả các phần tử
nhớ. Đó có thể là các Flip-Flop hoặc những bộ nhớ hoàn chỉnh hơn.
Các kết nối khả trình cho phép các khối logic có thể nối với nhau theo thiết kế
của người xây dựng hệ thống, giống như một bảng mạch khả trình.
Một số kiến trúc FPGA hiện nay còn có thể cho phép cấu hình lại từng phần
(partial re-configuration). Có nghĩa là cho phép một phần của thiết kế được cấu hình
lại trong khi những thiết kế khác vẫn tiếp tục hoạt động.
Một ưu điểm khác của FPGA, là người thiết kế có thể tích hợp vào đó các bộ
xử lý mềm (soft processor) hay vi xử lý tích hợp (embedded processor). Các vi xử lý
này có thể được thiết kế như các khối logic thông thường, mà mã nguồn do các hãng
cung cấp, thực thi các lệnh theo chương trình được nạp riêng biệt, và có các ngoại vi
được thiết kế linh động ( khối giao tiếp UART, vào/ra đa chức năng GPIO, thernet...).
Các vi xử lý này cũng có thể được lập trình lại (re-configurable computing) ngay

trong khi đang chạy.
FPGA được ứng dụng điển hình trong các lĩnh vực như: xử lý tín hiệu số, xử lý
ảnh, thị giác máy, nhận dạng giọng nói, mã hóa, mô phỏng (emulation)...FPGA đặc
biệt mạnh trong các lĩnh vực hoặc ứng dụng mà kiến trúc của nó yêu cầu một lượng
rất lớn xử lý song song, đặc biết là mã hóa và giải mã. FPGA cũng được sử dụng
trong những ứng dụng cần thực thi các thuật toán như FFT, nhân chập
(convolution), thay thế cho vi xử lý.
Hiện nay công nghệ FPGA đang được sản xuất và hỗ trợ phần mềm bởi các
hãng như: Xilinx, Altera, Actel, Atmel... Trong đó Xilinx và Altera là 2 hãng hàng đầu.
Xilinx cung cấp phần mềm miễn phí trên nền Windows, Linux, trong khi Altera cung
cấp những công cụ miễn phí trên nền Windows, Linux và Solaris.
1.2.1 KIẾN TRÚC FPGA
Trang 3
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
Hình 1.1: kiến trúc FPGA
Mỗi nhà sản xuất FPGA có riêng cấu trúc FPGA, nhưng nhìn chung cấu trúc
được thể hiện giống như trong hình bên trên. Cấu trúc FPGA bao gồm có
configuration logic blocks (CLBs), configurable I/O blocks (IOB), và programmable
interconnect. Và tất nhiên, chúng có mạch clock để truyền tín hiệu clock tới các logic
block, và thêm vào đó có các logic resources như ALUs, memory và có thể có cả
decoders. Các phần tử lập trình được của FPGA có 2 dạng cơ bản là các RAM tĩnh
(Static RAM) và anti - fuses.
Configurable I/O Blocks:
Configurable Logic Blocks (CLBs) bao gồm các Look-Up Tables (LUTs) rất linh
động có chức năng thực thi các logic và các phần tử nhớ dùng như là các flip-flop
hoặc các chốt (latch). CLB thực hiện phần lớn các chức năng logic như là lưu trữ dữ
liệu,..
Configurable I/O Blocks:
Input/Output Blocks (IOBs) điều khiển dòng dữ liệu giữa các chân vào ra I/O
và các logic bên trong của FPGA. Nó bao gồm có các bộ đệm vào và ra với 3 trạng

thái và điều khiển ngõ ra dạng open collector. Phần lớn là có trở kéo lên ở ngõ ra và
Trang 4
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
thỉnh thoảng lại có trở kéo xuống.IOBs hỗ trợ luồng dữ liệu 2 chiều (bidirectional
data flow) và hoạt động logic 3 trạng thái (3 state). Hỗ trợ phần lớn các chuẩn tín
hiệu, bao gồm một vài chuẩn tốc độ cao, như Double Data-Rate (DDR).
Programmable Interconnect:
Interconnect ở FPGA khác xa so với ở CPLD, tuy nhiên lại giống với của gate array
ASIC. Có một line dài được dùng để nối các CLBs quan trọng mà chúng lại ở cách xa
nhau mà không gây ra quá nhiều trễ. Chúng có thể được dùng như là các bus ở trong
chip. Có các line ngắn được dùng để liên kết các CLBs riêng rẽ nhưng đặt gần nhau.
Và cũng thường có vài ma trận chuyển đổi (switch matrices), giống như trong CPLD,
nối giữa các line dài và ngắn lại với nhau theo một số cách đặc biệt. Các chuyển đổi
lập trình được (Programmable switches) bên trong chip cho phép kết nối giữa CLBs
tới các interconnect line và giữa interconnect line với các line khác và với switch
matrix. Các bộ đệm 3 trạng thái được dùng để kết nối phần lớn các CLBs với các line
dài (long line), tạo nên các bus. Các long line đặc biệt, gọi là các line clock toàn cục
(global clock lines), được thiết kế đặc biệt cho trở kháng thấp và nhờ đó mà thời
gian lan truyền nhanh hơn. Chúng được kết nối với các bộ đệm clock và với mỗi
phần tử được clock trong mỗi CLB. Đó là cách mà clock có thể phân phối bên trong
FPGA.
Mạch đồng hồ (Clock Circuitry):
Các khối vào ra với bộ đệm clock high drive gọi là các clock driver, nằm rải
rác xung quanh chip. Các bộ đệm này được nối với các chân clock vào và lái các tín
hiệu clock vào các đường clock toàn cục (global clock line) như mô tả ở bên trên. Các
đường clock được thiết kế sao cho thời gian thời gian lệch nhỏ nhất và thời gian lan
truyền nhanh. Thiết kế đồng bộ là yêu cầu bắt buộc với FPGA, từ khi độ lệch tuyệt đối
và trễ không được bảo đảm. Chỉ khi dùng các tín hiệu clock từ các bộ đệm clock thì
thời gian trễ tương đối và thời gian lệch mới được đảm bảo.
2. CHIP MA HOA TIN HIÊU VIDEO ADV7181B́ ̃ ́ ́ ̣

1. CH C N NG VÀ D NG D LI U NGÕ RAỨ Ă Ạ Ữ Ệ
Nguôn anh cân x ly la tin hiêu analog video do DVD plalyer xuât ra. Kêt nôi ngò ̀ ́ ̀ ́ ́ ́ ́ ̃  
ra TV-Out composite cua DVD Player v i công TV-In trên Kit DE2 thi bố ̀   
ADV7181B se sô hoa tin hiêu nay sang chuân ITU - RTBT 656 la chuôi cac frame anh.̃ ́ ́ ́ ̀ ̀ ̃ ́  
Trang 5
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
Môi điêm trong frame anh thu v đ c biêu di n d i dang I(x,y) trong đo x,y la toa đỗ ́ ́ ̀         
cua pixel trên frame va I la m c xam t ng ng cua pixel đo. Nh vây 1 frame anh thù ̀ ́ ́ ́ ́       
đ c se đ c biêu diên d i dang môt ma trân 2 chiêu 720 x 525 v i 720 la sô pixel trên 1̃ ̃ ́ ̀ ́ ̀ ́       
hang, 525 la sô hang trong 1 frame.̀ ̀ ́ ̀
Chuân Video ITU – RBT601:
Chuân ITU – RBT 610/656 đinh nghia môt thiêt kê cho viêc ma hoa môt khung̃ ́ ́ ̃ ́    
bao gôm 525 (ho c 625) line tin hiêu video t ng t thanh dang sô, truyên tin hiêu v ì ́ ̀ ́ ̀ ́ ́      
xung clock 27MHz. Môt single horizontal line co câu truc:́ ́ ́
EAV BLANKING SAV Active Video Data
EAV, BLANKING va SAV đêu la cac tr ng (field) phân biêt đê đ ng bô d liêù ̀ ̀ ́ ̀ ̃      
đ c truyên.̀
EAV va SAV êu la cac tr ng 4 byte:̀ ̀ ̀ ́ ̀ 
EAV: cho biêt điêm kêt thuc c a Active Video Data trong line hi n hanh́ ́ ́ ̀  
cung nh la điêm b t đâu cua line tiêp theo.̃ ̀ ́ ̀ ́   
SAV: bao hiêu điêm b t đâu cua Active Video Data trong line hiên hanh.́ ́ ̀ ̀    
FFh 00h 00h XY
Byte th t XY  ch a thông tin v tr ng đ c truy n,     tình tr ng c a 
kho ng tr ng (field blanking) theo chi u d c (Vertical) ho c c a dòng tr ng (line     
blanking) theo chi u ngang (horizontal):
MSB LSB
1 F V H P3 P2 P1 P0
Bit Symbol Ch c n ng 
7 1 Luôn m c 1 
6 F Field Bit: 0 => Field1; 1 => Field2

Trang 6
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
5 V
Vertical Blanking Status Bit:
- Lên m c cao khi vertical field blanking interval. 
- Xuống mức thấp ở các trường hợp khác.
4 H
Horizontal Blanking Status bit:
- N u là tr ng SAV thì m c 0.   
- N u là tr ng EAV thì m c 1.   
3 P3 Protection bit 3
2 P2 Protection bit 2
1 P1 Protection bit 1
0 P0 Protection bit 0
Cac Protecction bit thi dung đê kiêm tra va s a lôi phu thuôc vao cac bit F,V,H.́ ̀ ̀ ̀ ̃ ̀ ́ ́    
nh ng khi nhân Video Stream ta co thê bo qua cac bit nay nên ta không xet đên.́ ́ ̀ ́ ́   
Y nghia cua cac bit F va V la đê đam bao s đông bô cac horizontal line tronǵ ̃ ́ ̀ ̀ ̀ ́     
môt frame theo chiêu d c:̀ 
TABLE 1
Field interval definitions
625 525
V-digital field blanking
Field 1 Start
(V=1)
Finish
(V=0)
Field 2 Start
(V=1)
Finish
(V=0)

Line 624 Line 1
Line 23 Line 20
Line 311 Line 264
Line 336 Line 283
Trang 7
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
V-digital field identification
Field 1 F=0
Field 2 F=1
Line 1 Line 4
Line 313 Line 266
Cach đ t gia tri cac bit F,V theo tr ng (Field 1 ho c 2) va tinh hiêu dunǵ ́ ́ ̀ ̀ ́     
(Active or Blanking) se đ c hiêu ro h n qua bang mô ta môt frame gôm 525̃ ̃ ̀     
horizontal line sau :
Field 1 (F=0) : 262 line t line 4 đên line 265; ̀ ́ Field 2(F=1) : 263 line t linè
266 đên line 3́
Active or Blanking : cac Active video data va cac Vertical Blankinǵ ̀ ́
Interval đ c s p xêp xen ke nhau :́ ́ ̃ 
Active portion (V=0) Odd Field : 244 line t 20->263; Even Field: 243 line t̀ ̀ 
283->525;
Vertical Blanking Interval (V=1): 38 line gôm 19 line t 1->19 va 19 line t̀ ̀ ̀ ̀ 
266->282;
Trang 8
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
Hình 2.1: Frame anh theo chuân ITU656 
Môt horizontal line tin hiêu se gôm cac thanh phân sau:́ ̃ ̀ ́ ̀ ̀ 
Blanking: trong suôt th i gian truyên tin hiêu Video, gi a cac Active videó ̀ ̀ ́ ̃ ́  
signal Segments se la cac horizontal blanking interval. Gia tri cua cac byte trong̃ ̀ ́ ́ ́ 
tr ng nay se phai phu h p v i cac câp đô (level) cua cac tin hiêu Cb, Cr va Y t ng̀ ̀ ̃ ̀ ́ ́ ́ ́ ́ ̀       
ng theo quy t c sau: Cb = 80h; Y = 10h; Cr = 80h ta co chuôi byte : 80h, 10h, 80h,…́ ́ ́ ̃ 

80h,10h.
Tuy vao sô line tin hiêu ma chuôi nay se bao gôm 268 byte (khung 525 line)̀ ̀ ́ ́ ̀ ̃ ̀ ̃ ̀
ho c la 280 byte (khung 625 line).̀
Active Video Data: Co tât ca 1440 byte ch a đ ng cac thông tin vê anh: 720 giá ́ ́ ́ ̀ ́   
tri Y (luminace-brightness); 360 gia tri Cr (red chrominace); 360 gia tri Cb (blué ́  
Trang 9
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
chromiance) đ c s p xêp theo t ng nhom c môt Cb va Cr thi co 2 gia tri Y:́ ́ ̀ ́ ́ ̀ ̀ ́ ́     
CbYnCrYn+1 tao thanh chuôi: ̀ ̃
………Cb0Y0Cr0Y1Cb1Y2Cr1Y3 Cb359Y718Cr359Y719
Cac tr ng SAV va EAV:́ ̀ ̀ môi tr ng dai 4 bytẽ ̀ ̀
Vây trong hê thông 525 line thi môt Horizontal line se bao gôm 1716 byte.́ ̀ ̃ ̀  
2. GIAO TH C CÀI T I2CỨ ĐẶ
ADV7181B hô tr môt giao diên kêt nôi 2 dây tuân t “a-wire serial interface”̃ ́ ́ ̀   
I2C. Hai ngo vao : d liêu tuân t SDA, xung clock tuân t SCLK mang thông tin gi ã ̀ ̃ ̀ ̀ ̃    
ADV7181B v i bô điêu khiên hê thông I2C. Môi thiêt bi t i (Slave) se đ c nhân ra b í ̀ ́ ̃ ́ ́ ̃       
môt đia chi duy nhât.́  
Cac chân I2C cua ADV7181B cho phep ng i dung cai đ t, câu hinh bô ma hoá ́ ̀ ̀ ̀ ́ ̀ ̃ ́   
va đoc ng c lai d liêu VBI (vertical blank interval) b t đ c. ADV7181B co 4 đià ̃ ́ ́       
chi Slave cho tât ca thao tac đoc va ghi phu thuôc vao m c logic cua chân ALSB. ALSB́ ́ ̀ ̀ ́      
điêu khiên bit 1 cua đia chi Slave (Slave_address[1] ) b i viêc thay đôi chân nay co thê điêù ̀ ́ ̀      
khiên đ c ca 2 bô ADV7181B ma không co s xung đôt vi trung đia chi Slave. Bit thâp̀ ́ ̀ ̀ ́       
nhât cua đia chi Slave( LSB hay là Slave_address[0] ) quyêt đinh thao tac ghi hay đoc:́ ́ ́    
m c 1 đoc va m c 0 thi ghi. đây ta chi s dung 1 bô ADV7123, giao th c I2C chú ̀ ́ ̀ ́   !      
yêu dung đê nap d liêu cho cac thanh ghi nên chon đia chi Slave cho chip ma hoa nay lá ̀ ̃ ́ ̃ ́ ̀ ̀      
0x40h t bang gia tri đia chi I2C Slave d i đây:̀ ́ ́     
ê điêu khiên thiêt bi trên Bus thi phai co môt giao th c đ c biêt đi kem. âu tiêǹ ́ ̀ ́ ́ ̀ ̀        
Master se kh i đông truyên d liêu b ng viêc thiêt lâp điêu kiên b t đâu (SDA t 1 xuông 0̃ ̀ ̃ ̀ ́ ̀ ́ ̀ ̀ ́         
trong khi SCLK vân m c cao) đây ta goi la START, no am chi r ng theo sau đo lã ́ ̀ ́ ́ ̀ ́ ̀    
Trang

10
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
môt luông đia chi hay d liêu. Cac ngoai vi đap tra l i START va dich chuyên 8 bit ti p̀ ̃ ́ ́ ̀          
theo (7 bit đia chi va 1 bit đoc/ghi), cac bit nay đ c truyên t bit cao (MSB) đên thâp̀ ́ ̀ ̀ ̀ ́ ́    
(LSB). Cac ngoai vi khi đa nhân ra cac đia chi đ c truyên thi đap ng b ng cach gí ̃ ́ ̀ ̀ ́ ́ ̀ ́ ̃       
SDA = 0 trong toan bô chu ky th 9 cua xung clock goi la ACK. Cac thiêt bi khac thì ̀ ́ ̀ ́ ́ ́ ̀    
se rut khoi bus tai điêm nay va bao toan trang thai IDE (khi ca SDA va SCLK đêu ̃ ́ ̀ ̀ ̀ ́ ̀ ̀     
m c cao đê cho cac thiêt bi theo doi 2 line nay, ch START va đia chi đ c truyên đung).́ ́ ̃ ̀ ̀ ̀ ̀ ́       
Bit đoc/ghi chi ra h ng cua d liêu, LSB = 0/1 thi master ghi/đoc thông tin vao/t́ ̃ ̀ ̀ ̀       
ngoai vi.
ADV7181B hoat đông nh thiêt bi Slave tiêu chuân trên Bus, ch a 196 đia chi coń ́       
(Subaddress la đô lêch cua đia chi cân thao tac v i đia chi thiêt bi) đê cho phep truy câp cac̀ ̀ ́ ́ ́ ́ ́          
thanh ghi nôi. iêu đo giai thich r ng byte đâu tiên la đia chi cua thiêt bi va byte th 2 là ́ ́ ̀ ̀ ̀ ́ ̀ ́ ̀        
đia chi con đâu tiên. Cac đia chi con nay t đông t ng dân cho phep truy đoc/ghi đia chì ́ ̀ ̀ ́         
con b t đâu. S truyên d liêu thi luôn bi ng t b i điêu ki n d ng (STOP). Ng i dunǵ ̀ ̀ ̃ ̀ ́ ̀ ̀ ̀ ̀        
co thê truy câp t i bât c duy nhât 1 thanh ghi đia chi con trên c s 1-1 khi không co ś ́ ́ ́ ́ ́       
câp nhât toan bô cac thanh ghi. đê tai nay ta không s dung chê đô câp nhât toan bô mà ́ ̀ ̀ ̀ ́ ̀ ̀   !      
chi truy câp vao cac thanh ghi cân thiêt cac đia chi con trên c s 1-1.̀ ́ ̀ ́ ́    
START va STOP co thê xuât hiên bât ki đâu trong s truyên d liêu, nêu cac điêu kiêǹ ́ ́ ́ ̀ ̀ ̃ ́ ́ ̀     
nay đ c kh ng đinh ngoai chuôi liên tuc v i cac thao tac đoc va ghi thông th ng,̀ ̀ ̃ ́ ́ ́ ̀ ̀ "     
thi no tac đông lam bus tr vê trang thai IDE. Nêu đia chi ng i dung phat ra không phù ́ ́ ̀ ̀ ́ ́ ̀ ̀ ́ ̀    
h p (invalid) thi ADV7181B se không g i xac nhân ACK va tr vê trang thai IDE.̀ ̃ ́ ̀ ̀ ́   
Nêu cac đia chi con t đông t ng dân rôi v t qua gi i han đia chi con cao nhât:́ ́ ̀ ̀ ́ ́ ́         
• Nêu đang đoc thi nh ng gia tri ch a đ ng trong thanh ghi co đia chi coń ̀ ̃ ́ ́ ́      
cao nhât se đ c tiêp tuc đoc cho đên khi Master phat 1 NACK (SDK không bi đ á ̃ ́ ́ ́    
xuông m c thâp trong toan bô chu ky th 9) đê chi r ng viêc đoc kêt thuc.́ ́ ́ ̀ ́ ̀ ́ ́       
• Nêu đang ghi thi nh ng gia tri cua byte không phu h p se không đ ć ̀ ̃ ́ ̀ ̃    
load.
Trang
11

Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
Hình 2.1: Truyên d liêu trên bus va chuôi oc va ghi tuân t v i giaò ̃ ̀ ̃ ̀ ̀ ́      th c I2Ć
 Truy câp cac thanh ghi : MPU co thê viêt ho c đoc cac thanh ghí ́ ́ ́   
ngoai tr cac đia chi con, chung chi đ c ghi, chung chi ra cac thanh ghi mà ́ ́ ́ ́ ̀      
tac vu đoc hay ghi tiêp theo truy câp đên. Moi s giao tiêp v i phân nay thông quá ́ ́ ́ ́ ̀ ̀     
Bus START v i môt s truy câp cac thanh ghi nay. Cac thao tac ghi hay đoc sé ́ ̀ ́ ́ ̃    
đ c th c hiên t đia chi đich, rôi t ng lên đia chi tiêp theo đên khi môt lênh STOP̀ ́ ̀ ́ ́          
trên Bus đ c th c thi. 
 Lâp trinh cac thanh ghi: câu hinh cho t ng thanh ghi, thanh ghì ́ ́ ̀ ̀ 
giao tiêp gôm 8 bit chi đ c ghi. Sau khi thanh ghi nay đ c truy câp trên Bus vá ̀ ̀ ̀   
môt thao tac đoc/ghi đ c l a chon, cac đia chi con đ c cai đ t chi ra cać ́ ̀ ́         
thanh ghi ma tac vu se đ t t i.̀ ́ ̃ ́  
 Chon l a thanh ghi: (SR đên SR0) nh ng bit nay đ c cai đ t đế ̃ ̀ ̀     
chi ra đia chi b t đâu đ c yêu câu.́ ̀ ̀    
 Chuôi I2C : đ c s dung khi cân cac thông sô v t qua 8 bit, vĩ ̀ ́ ́ ́ ̀   
vây no phai đ c phân phôi trên it nhât 2 thanh ghi cua I2C:́ ́ ́ ́   
Khi môt thông sô đ c thay đôi b i 2 lân ghi thi no co thê gi gia tri không phú ̀ ̀ ́ ́ ̃ ́ ̀     
h p (invalid) trong khoang th i gian lân đâu va lân cuôi I2C đ c hoan thanh, co nghià ̀ ̀ ̀ ̀ ́ ̀ ̀ ́ ̃   
la cac bit đâu cua no co thê mang gia tri m i trong khi cac bit con lai vân gi gia tri cu.̀ ́ ̀ ́ ́ ́ ́ ́ ̀ ̃ ̃ ́ ̃     
Trang
12
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
ê tranh sai sot nay chuôi I2C se gi cac bit gia tri câp nhât cua cac thông số ́ ̀ ̃ ̃ ̃ ́ ́ ́ ́     
trong bô nh cuc bô, va cac bit cua chuôi I2C đ c câp nhât v i nhau môt lân khi tac vú ̀ ́ ̃ ́ ̀ ́          
ghi vao thanh ghi cuôi cung hoan thanh.̀ ́ ̀ ̀ ̀
Tac vu h p ly trên chuôi I2C se d a trên c s sau: cac thanh ghi danh chó ́ ̃ ̃ ́ ̀   
chuôi I2C se đ c ghi theo th t t ng dân đia chi cac thanh ghi. Vi du: HSB[10:0] thĩ ̃ ́ ̀ ́ ́ ̀      
ghi lên 0x34 tr c rôi ngay lâp t c ghi thêm vao 0x35.́ ̀ ́ ̀  
3. SDRAM IS42S16400
SDRAM IS42S16400 có t t c 67180864 bit SDRAM đ c t ch c thành 4    

d i (BANK) nh , m i d i có dung l ng 1024576 t (Words) 16 bit v i t c đ # $   % #  &
truy n d li u có th lên đ n 133MHz.    
1. NGUYÊN T C HO T NG' ( )
Th c hi n vi c truy n d li u qua các chân đ a ch và d li u d i s chi ph i       *   #  
c a các chân di u khi n:  
• CKE cho phép xung clock. Khi tín hi u này m c th p, chip x lý   
gi ng nh là xung clock hoàn toàn b d ng l i.   % 
• /CS l a ch n chip: m c cao, thì b qua t t c các đ u vào khác (ngo i   +    
tr CKE), và ho t đ ng nh m t l nh NOP nh n đ c.%  &  &   
• DQM m t n d li u: Khi cao, nh ng tín hi u này kh ng ch d li u         
vào/ra. Khi đi kèm v i s vi t, d li u không th t s vi t vào. Khi d li u đ c gi #           
m c trong hai chu k tr c m t chu k đ c, vi c đ c không đ c đ a ra t chip. Trên , # & ,      %
m t chip nh x16 hay DIMM, v i 1 t 8 bit thì có m t hàng DQM.& # # % &
• /RAS Row Address Strobe là bit đi u khi n cho qua đ a ch hàng.   *
• /CAS Column Address Strobe bit đi u khi n cho qua đ a ch c t.   * &
• /WE Write enable cho phép ghi.
Các tín hi u  /RAS, /CAS, /WE dùng đ l a ch n 1 trong 8 l nh. Nói chung thì   
dùng đ phân bi t các l nh đ c, ghi.   
SDRAM bên trong đ c chia thành trong 2 hay 4 d i (Bank) d li u n i đ c    & &
l p bên trong. M t ho c hai đ a ch vào c a d i (Bank) BA0 và BA1 s l a ch n Bank &   *     
mà l nh tác đ ng đ n. & 
Trang
13
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
Ph n l n các l nh đ u s d ng đ a ch đ c đ a vào ngõ vào đ a ch . Nh ng có #      *    * 
m t s l nh l i không s d ng chúng, hay ch bi u di n m t đ a ch c t, vì v y ta s&      *   &  * &  
d ng A[10] đ l a ch n nh ng ph ng án.     
B ng 1: Các ch truy c p SDRAMả ế độ ậ
/CS /RAS /CAS /WE Ban A10 An L nhệ
H X X X X X X

c ch các l nh  
khác
L H H H X X X
Không làm gì
c (NOP)
L H H L X X X
D ng (h y) truy n%  
kh i: d ng l nh % 
đ c kh i hay ghi 
kh i khi đang th c 
hi n.
L H L H Bank L Column
Read: đ c kh i d  
li u t hàng kích %
ho t hi n hành. 
L H L H Bank H Column
c v i Precharge #
( n p l i ) t đ ng:   &
khi th c hi n xong
thì Precharge ( t c
là đóng hàng l i). 
L H L L Bank L Column
Write: ghi kh i d 
li u t hàng kích %
ho t hi n hành. 
L H L L Bank H Column
Ghi v i s n p l i#   
t đ ng: khi th c & 
hi n xong thì n p 
l i (Precharge) t c 

là đóng hàng l i.
L L H H Bank Row
Active (kích ho t):
m m t hàng v i & #
l nh Read và Write.
L L H L Bank L X
Precharge (n p
l i): Ng ng ho t  
đ ng hàng hi n hành& 
c a bank (d i) 
đ c ch n. 
Trang
14
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
L L H L X H X
Precharge all (n p
l i toàn b ): Ng ng & 
ho t đ ng hàng &
hi n hành c a t t  
c các bank (d i). 
L L L H X X X
Auto refresh (t
đ ng làm t i): làm& 
t i t ng hàng c a % 
t ng bank, s% 
d ng b đ m n i. &  &
T t c các d i ph i   
đ c n p l i.  
L L L L 0 0 Mode
Lode mode

register (ch đ &
n p các thanh ghi):
A[9:0] đ c n p đ  
c u hình chip
DRAM.
Trong đó quan
tr ng nh t là ng m  
đ nh CAS (2 ho c 3 
chu k ) và chi u dài, 
kh i (1, 2, 4, ho c 
8 chu k ).,
S t ng tác các tín hi u i u khi n SDRAM:     
Không có l nh nào luôn đ c cho phép: 
Lệnh chế độ nạp các thanh ghi (load mode register command) yêu cầu
tất cả các dải (Bank) ở trạng thái IDE, và phải trì hoãn về sau cho sự thay đổi để tác
động.
L nh t đ ng làm t i (auto refresh command) thì yêu c u t t c các d i  &     
(Bank) tr ng thái IDE, và m t 1 kho ng th i gian làm t i đ đ a Chip v tr ng thái         
IDE: th ng là t
rcd
+ t
rp
.
Trang
15
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
Ch có nh ng l nh khác thì cho phép trên m t Bank IDE là các l nh kích ho t.*   &  
C n ph i m t trcd tr c khi hàng đ c m hoàn toàn và ch p nh n m t l nh đ c hay   #    &  
ghi.
Khi một dải (Bank) được mở thì có 4 lệnh được cho phép: đọc, ghi, kết thúc

truyền khối (Burst terminal), nạp lại (precharge). Lệnh đọc, ghi bắt đầu truyền khối và
có thể bị ngắt bởi những ngắt sau:
Ngắt một đọc khối dữ liệu:
Sau một lệnh đọc thì bất cứ lúc nào cũng có thể có một trong các lệnh: đọc, kết
thúc truyền khối, hoặc là nạp được phát ra. Và sẽ ngắt đọc khối này nếu có một ngầm
định CAS được cấu hình. Nếu có 1 lệnh đọc ở thời điểm 0, 1 lệnh đọc khác ở chu kỳ 2,
ngầm định CAS ở chu kỳ 3 thì lệnh đọc đầu tiên sẽ truyền khối dữ liệu ra ngoài ở chu
kỳ 3 và 4, và kết quả của lệnh đọc thứ 2 sẽ bắt đầu xuất hiện ở chu kỳ 5.
N u l nh chu k 2 là k t thúc truy n kh i ho c là n p l i Bank kích ho t thì  ,       
không có d li u ra chu k 5.  ,
M c dù vi c ng t l nh đ c có th xu t hi n m t Bank b t k , nh ng l nh  -      &  ,  
n p l i ch ng t vi c đ c kh i n u nó tác đ ng trên cùng m t Bank ho c t t c các Bank,  * -     & &   
n u l nh này h ng đ n m t Bank khác thì vi c đ c kh i v n ti p t c.  #  &    .  
S ng t đ c t o ra b i m t l nh ghi thì c ng có th nh ng s khó kh n h n. -   &  /     
Th c hiên đi u này nh vào m t tín hi u DQM đ kh ng ch ngõ ra c a SDRAM, vì   &     
v y trong kho ng th i gian này, chíp đi u khi n b nh có th lái d li u đi qua chân     & #   
DQ đ ghi vào SDRAM. Vì tác đ ng c a DQM trên l nh đ c thì b trì hoãn 2 chu k trong &     ,
khi đ i v i l nh đ c thì ngay l p t c, nên DQM ph i lên m c cao (raised) s m h n 2 #       # 
chu k tr c khi có l nh ghi., # 
th c hi n đi u này trong 2 chu k thì yêu c u đ nh v th i đi m SDRAM t t    ,      -
ngõ ra t i 1 c nh lên xung Clock và th i đi m d li u đ c cung c p (cho l nh ghi )        
nh ngõ vào c a SDRAM c nh ti p theo c a Clock.    
M t ng t ghi kh i d li u:     
Trang
16
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
B t k l nh đ c, ghi, hay k t thúc truy n t i m t Bank b t k s k t thúc ,     # &  ,  
(d ng) vi c ghi kh i ngay l p t c, d li u trên chân DQ khi l nh th 2 đ c phát thì%         
ch do l nh này s d ng.*   
Ng t ghi kh i v i l nh precharge (đ n cung m t Bank) thì khá ph c t p. ó là-  #   &   

th i gian vi t nh nh t, t  + 
wr
ph i đ c l t qua gi a tác v ghi sau cùng t i 1 Bank  #   #
(chu k không b che (unmasked) cu i cùng c a ghi kh i) v i l nh precharge k,     #  
ti p, vì v y m t ghi kh i s b d ng (h y) b i l nh tích n p (pre-charge) n u có đ  &    %     
chu k kéo dài đ c che đi (dùng DQM) đ t o t,   
wr
c n thi t. M t l nh ghi v i s tích  &  # 
n p t đ ng ch a đ ng m t trì hoãn t đ ng.  &   &  &
Ng t m t l nh tích n p t ng:     
Vi c x lý s gián đo n c a thao tác đ c, ghi v i ch đ tích n p t đ ng là m t      #  &   & &
đ c tính l a ch n c a SDRAM, và đ c h tr r t nhi u. N u đ c s d ng, s tích     $        
n p hay th i gian ch t  
wr
theo sau b i s tích n p (sau khi đ c) b t đ u cùng m t chu    -  &
k nh m t l nh ng t.,  &  -
S p x p truy n kh i SDRAM:   
M t b vi x lý hi n đ i có b đ m nói chung s truy nh p b nh trong& &    &    & #
nh ng đ n v c a line b đ m. Ví d đ truy n 64 byte, line b đ m yêu c u 8 s truy    &     &   
c p liên ti p t i m t DIMM (dual in-line memory module: module nh có hai hàng  # & #
chân) 64bit, mà toàn b có th đ c kích kh i b i m t l nh đ n đ c hay ghi tùy vào s&   &    
c u hình các chíp SDRAM.
S truy c p line đ m đi n hình đ c kích kh i b i m t s đ c t m t đ a ch     &   % &  *
đ c bi t, và SDRAM cho phép " t có tính ch t quy t đ nh " c a line đ m s đ c  %       
truy n đ u tiên. ("t " đây có ngh a là chi u r ng (c a) chíp SDRAM hay DIMM, 64  % 0  & 
bít v i m t DIMM tiêu bi u).# & 
Chíp SDRAM h tr hai giao th c đ s p x p các t còn l i trong line đ m:$    -  %  
- Ch đ truy n kh i đan xen: làm cho các tính toán c a con ng i thêm ph c &     
t p nh ng l i d dàng t ng h p ph n c ng h n và đ c u tiên v i các b vi x lý           # & 
Intel. Ta không s d ng ki u truy n này.   

Trang
17
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
- Ch đ truy n kh i tu n t : nh ng t tr h n đ c truy c p trong vi c &      %     
t ng d n đ a ch , khi k t thúc thì quay tr l i đi m b t đ u kh i. Ch ng h n, v i m t   *    -   "  # &
tuy n kh i có chi u dài là 4, và đ a ch c t đ c yêu c u là 5, nh ng t s truy c p theo    * &    %  
th t 5-6-7-4. N u chi u dài truy n kh i là 8, th t truy c p là 5-6-7-0-1-2-3-4.        
i u này đ c th c hi n b i vi c thêm m t b đ m đ a ch c t, và b qua s nh khi đi      & &   * & +  #
h t kh i. 
Ta có th l a ch n chi u dài kh i và ki u truy c p kh i b ng cách s d ng ch        1   
đ thanh ghi đ c mô t ph n ti p theo.&    
Ch thanh ghi c a SDRAM:  
T c đ d li u đ n SDRAM có m t ch đ thanh ghi 10 bít đ n l p trình đ c. &    &  &   
Sau đó chu n SDRAM t c đ d li u kép SDRAM b sung thêm ch đ thanh ghi, đ nh2  &     & 
đ a ch s d ng nh ng chân đ a ch Bank. V i SDR SDRAM, chân đ a ch Bank và đ a ch *     * #  *  *
hàng A[10] và cao h n thì đ c l đi, nh ng ph i là 0 trong khi ch đ ghi vào thanh      &
ghi. Trong chu k c a ch đ thanh ghi thì các giá tr n p vào M[9:0] chính là các bit đ a,   &   
ch .*
- M[9] chế độ ghi từng khối, ở mức 0 thì ghi sử dụng chế độ và chiều dài
truyền khối ở chế độ đọc, ở mức 1 thì tất cả các ghi không phải là truyền khối (định vị
đơn).
- M[8:7] ch đ v n hành, mu n ch đ l u tr thì đ t giá tr 00.  &    &    
- M[6:4] ng m đ nh CAS ch v i các giá tr h p l là 010 (CL2) và 011  * #   
(CL3). Ch ra s chu k gi a l nh đ c và d li u đ c g i ra t Chip. Chip s hoàn*  ,        % 
thành m t gi i h n c b n trong nanô-giây d a trên giá tr này; khi kh i t o, b đi u& #       & 
khi n b nh ph i s d ng ki n th c c a nó v t n s xung Clock và d ch gi i h n & #           # 
kia thành nh ng chu trình. 
- M[3] ki u truy c p các t trong kh i : 0 thì truy c p tu n t , 1 thì truy  %    
c p đan xen. 
- M[2:0]: chi u dài kh i: giá tr 000, 001, 010 và 011 ch ra kích th c   * #

kh i t ng ng là 1, 2, 4 hay 8 t . M i đ c ( và vi t, n u m[9] là 0) s th c hi n   % $      
nhi u s truy c p, tr phi đ c gián đo n b i m t s d ng (h y) truy n kh i hay các   %   &  %   
Trang
18
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
l nh khác. Giá tr 111 đ c t kh i v i đ y đ hàng (full-row Burst ho c còn g i là full     #    
page Burst). S truy n kh i v i đ y đ hàng ch đ c cho phép v i ki u tu n t . i   #   *  #    
v i SDRAM IS42S16400 thì chi u dài c a 1 kh i ch đ full page Burst là 256 t .#     & %
S truy n kh i thì ti p t c cho đ n khi có ng t.      -
Làm t i t ng:  
Dùng đ làm t i l i Chip ram nh vào s m và đóng ( kích ho t và tích n p )      
t ng hàng trong t ng Bank. Tuy nhiên, đ đ n gi n hóa chíp đi u khi n b nh , Chip% %      & #
SDRAM h tr l nh t đ ng làm t i, t c là đ ng th i th c hi n thao tác này t i m t$    &       # &
hàng trong t ng Bank. SDRAM c ng duy trì m t b đ m n i đ c l p l i trên toàn b% / & &  &    &
các hàng có th . Chip đi u khi n b nh thì đ n gi n ph i phát ra đ s l ng các l nh   & #       
làm t i t đ ng (1 l nh đ i v i 1 hàng ) v i m i kho ng làm t i (m t giá tr chung là  &   # # $   & 
tref = 64 ms). T t c các Bank ph i tr ng thái IDE khi l nh đ c phát.     
Ch Lover Power: 
Nh đã đ c p, ngõ vào cho phép xung Clock (CKE) có th đ c dùng đ d ng      %
xung Clock t i SDRAM. Giá tr ngõ vào CKE đ c xét t i t ng c nh lên c a xung Clock,#    %  
và n u m c th p, thì m i c nh lên c a xung Clock ti p theo s b b qua m i m c         +  
đích khác so v i vi c ki m tra CKE.#  
N u CKE xu ng th p trong khi SDRAM đang th c hi n tác v , thì nó đ n gi n       
ch là “đóng b ng l i” t i ch cho đ n khi CKE lên m c cao.*    $  
N u SDRAM tr ng thái IDE ( t t c các Bank đ c tích n p, không có l nh      
nào đang ho t đ ng) khi CKE xu ng th p, SDRAM t đ ng ch n ch đ power-down &    &   &
(ti t ki m n ng l ng), gi n ng l ng c c ti u cho t i khi có c nh lên c a CKE.         #  
Kho ng này thì không đ c dài h n giá tr t i đa kho ng làm t i t      
ref
, n u không nh ng 

gì b nh ch a đ ng s b m t. ây là ph ng pháp đ d ng toàn b xung Clock trong& #         % &
kho ng th i gian này đ ti t ki m n ng l ng.      
Cu i cùng, n u CKE m c th p vào lúc m t l nh làm t i t đ ng đ c g i    &    &  
đ n SDRAM, SDRAM ch n ch đ t làm t i ( seft-refresh mode). T ng t   &    
Power Down, nh ng SDRAM dùng m t timer n i đ phát ra các chu k làm t i n i khi & &  ,  &
c n thi t. Trong th i gian này thì d ng xung Clock. Ch đ t làm t i tiêu th ít n ng   %  &    
Trang
19
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
l ng h n so v i ch đ Power Down, nh ng v n cho phép b đi u khi n b nh  #  &  . &   & #
disable toàn b .&
4. C CH HI N TH NH LÊN MONITORƠ Ế Ể Ị Ả
1. NGUYÊN T C CHUNG.Ắ
hi n th hình nh ra màn hình đ c tích h p thì c n ph i có m t b VGA        & &
Grenerator v i các tín hi u và c ch làm vi c nh sau:#     
4.1.1 VGA COLOR SIGNALS.
Có 3 tín hi u color là: red, green và blue g i tín hi u màu s c (color   -
information) đ n màn hình VGA. M i m t tín hi u đi u khi n m t súng b n đi n t $ &    & -  
(electron gun) đ phóng các h t electron v lên m t màu c b n t i m t đi m trên màn   &    & 
hình. D i c a tín hi u n m t t 0V (t ng ng v i màu t i hoàn toàn) và 0.7V (sáng   1 % %   # 
hoàn toàn) đi u khi n c ng đ c a m i thành ph n màu và 3 thành ph n màu k t h p v i   &  $     #
nhau t o lên màu c a đi m nh (dot) hay ph n t nh (pixel) trên màn hình.      
Hình 4.1: VGA Connection
Tùy vào độ rộng A bít của tín hiệu màu ngõ vào tín mà mỗi màu analog ở ngõ ra
là một trong 2
A
mức với bộ chuyển đổi digital to analog A bit, 3 tín hiệu analog kết hợp
với nhau tạo nên phần tử ảnh (pixel) với 2
A
x 2

A
x 2
A
= 2
3A
màu khác nhau.
Trang
20
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
4.1.2 VGA SIGNAL TIMING.
Mỗi một ảnh (hay frame) trên màn hình hiển thị là kết hợp của h dòng, mỗi
dòng có w pixel. Kích thước của mỗi frame được biểu diễn w x h dưới dạng tiêu biểu
gồm 640 x 480m 800 x 600, 1024 x 768 và 1280 x 1024.
Hình 4.2: CRT Display Timing Example
Để vẽ một frame, có những mạch điện có trách nhiệm di chuyển dòng electron
từ trái sang phải và từ trên xuống dưới dọc theo màn hình gọi là deflection circuit.
Những mạch này yêu cầu phải có 2 tín hiệu đồng bộ để khởi động và dừng dòng
electron tại đúng thời điểm để cho một dòng các điểm ảnh được vẽ dọc theo màn hình
và mỗi dòng được điền theo cơ chế từ trên xuống dưới để tạo lên một ảnh.
VGA Display Timing với chế độ 640 x 480:
Symbol Parameter Vertical Sync Horizontal Sync
Time Clocks Lines Time Clocks
T
s
Sync pulse time 16.7 ms 416,800 521 32µs 800
T
DISP
Display time 15.36 ms 384,000 480 25.6µs 640
T
PW

Pulse width 64µs 1,600 2 3.84µs 96
T
FP
Front porch 320µs 8,000 10 640ns 16
T
BP
Back porch 928µs 23,200 29 1.92µs 48
Trang
21
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
4.1.3 VGA GENERATOR.
Hệ thống bên ngoài ghi giá trị pixel vào trong thanh ghi pixel (data register).
Nội dung của thanh ghi này được dịch sau mỗi xung cloch để thay thế pixel hiện tại.
Các bit này được gửi đến bộ DAC để chuyển sang dạng tín hiệu màu analog. Rồi kiểm
tra xem giá trị trên chân Blank để xuất ra cổng VGA.
Hai mạch tạo xung đồng bộ (pulse generation circuit) được dùng để tạo các
xung đồng bộ dọc (VSYNC) và ngang (HSYNC). Bộ hirizontal sync generator có đầu
ra là tín hiệu gate một chu kì trùng khớp với sường lên của xugn đồng bộ ngang
(horizontal sync pulse), tín hiệu gate này nối với tín hiệu clock – enable của bộ vertical
sync generator vì thế nên clock – enable chỉ cập nhật bộ đến thời gian sau mỗi dòng
pixel (line of pixels). Tín hiệu gate của vertical sync generator được dùng như tín hiệu
báo kết thúc một frame, đồng thời nó cũng reset và xóa toàn bộ nội dung của pixel
buffer nên bộ VGA generator luôn khởi động từ trạng thái xóa sạch hoàn toàn với mọi
frame.
Bộ tạo tín hiệu đồng bộ cũng tạo ra các tín hiệu horizontal và vertical blanking.
Khi dùng phép toán OR logic ta được tín hiệu blanking toàn cục.
2. B VGA DAC ADV7123Ộ
Kit DE2 tích hợp một bộ VGA DAC và ADV7123 với cấu trúc
 Hỗ trợ tín hiệu màu 10 bit ở ngõ vào, với bộ DAC 10 bit sẽ cho ra mức
màu Analog ở ngõ ra, tuy nhiên trong thiết kế dữ liệu màu ta cung cấp cho ADV7181

chỉ là 8 bit nên tín hiều màu ở Analog ngõ ra có mức 3, tín hiệu analog kết hợp lại với
nhau tạo nên phần tử ảnh (16 triệu) màu, 1028224.
 Các tín hiệu đồng bộ là SYNC và BLANK: giá trị của SYNC thì không
ảnh hưởng đến quá trình hiển thị, BLANK với giá trị 0 thì chốt các dữ liệu màu ở ngõ
vào.
Trang
22
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
Hình 4.3: S c u trúc ADV7123  
 Các chân c a ngõ ra đ c n i t ng ng v i các chân c a c ng VGA     #  
trên KIT DE2, vì v y đ s d ng đ c b VGA DAC này ta ph i t o ra m t kh i v a     &   &  %
cung c p các tín hi u BLANK, Red, Green, Blue cho ADV7123 v a ph i t o ra 2 tín  %  
hi u đ ng b VSYN và HSTNC n i tr c ti p vào c ng VGA m t cách đ ng th i.  &     &  
5. S L C H TH NGƠ ƯỢ Ệ Ố
1. S THI T Ơ ĐỒ Ế KẾ
Trang
23
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
Hình 5.1: S h th ng   
2. NGUYÊN LÝ HO T NGẠ ĐỘ
Kh i I2C_Video_Config: v i giao th c giao ti p I2C s đ t giá tr cho các #     
thanh ghi c a b mã hóa ADV7181 đ c u hình ho t đ ng cho chip mã hóa này. &    &
Kh i Timer trì hoãn ban đ u: Sau chu i kh i đ ng, ADV7181 r i vào th i kì  $ &  
không n đ nh, kh i s phát hi n th i kì không n đ nh này r i tính toán th i đi m b t           -
đ u làm vi c c a các kh i khác.   
Kh i Disize_Horizon: L y ra chu i liên t c các pixel trong dòng d li u do  $   
ADV7181B xu t ra đ ng th i đ nh l i kích th c frame nh t d ng 720 x 480 sang     #  % 
chu n VGA 640 x 480.2
SDRAM BUFFER: Nh n d li u và tính hi u đi u khi n ghi t kh i      % 
Disize_Horizon đ ghi giá tr các pixel vào SDRAM, đ ng th i c ng nh n tín hi u t    /   %

VGA controller đ đi u khi n vi c xu t d li u, đ a ch phù h p (xu t xen k các line        *   
thu c Odd field và Even field).&
Kh i x lý nh YUV: x lý d li u nh nh n đ c t SDRAM BUFFER r i         % 
xu t ra d li u nh cho kh i Convert YUV to RGB.    
Trang
24
Đồ án cơ sở GVHD: Th.s Cao Trần Bảo Thương
Kh i ConvertYUVtoRGB: ADV718B xu t ra nh video d ng YUV, đ có    
th hi n th lênh VGA thì tr c tiên chuy n đ i thành d ng RGB.   #   
Kh i VGA_Controller: Nh n d li u nh RGB t kh i ConvertYUVtoRGB     % 
đ xu t d li u và tín hi u đ ng b cho video DAC7123, đ ng th i c ng phát ra các tín      &   /
hi u đi u khi n SDRAM_BUFFER đ xu t d li u t SDRAM.       %
6. KH I I2C_VIDEO_CONFIGỐ
1. S KH IƠ ĐỒ Ố
Hình 6.1: S kh i I2C_Video_Config  
Tên
Mô t
ICLK
Xung Clock 50MHz t kit DE2%
RESET
Tín hi u Reset h th ng  
I2C_SCLK
Ngõ ra ch a xung Clock cung c p cho ADV7181B 
I2C_DATA
Port 2 chi u đ c u hình các giá tr thanh ghi c a ADV7181B    
Trang
25

×