Đồ án Tốt nghiệp Đại học
2012
i
LỜI NI ĐU
Ngày nay, các camera giám sát có kèm theo chu khin có mt khp mi
c s dm nóng giao thông hay các
v t chân ti. Ngoài các chng,
các camera loi này còn có kh u khin các thit b n ti
th này hoc nhp khu toàn b t c ngoài,
có chi phí cao và kh u hình li thp. Ngoài ra, t truyn hình ng là
mt trong nhm ca các h thng này.
K thut nén d li c khi truy ct lõi ca các sn phm IP
ng, có hai cách nén d liu: mt là nén bng phn mm, hai là
nén bng IC chuyên dng. Vi gii pháp th nht, giá thành ca sn phm có th
c gim b truyn hình nh s rt thp hoc chng hình nh
m bo. Vi gii pháp th hai, ngoài vic có giá thành cao thì vic cu
hình li s r
T ng mun xây dng mt h thng Camera có kh n hình nh ti
nhii dùng có th u khin các thit b
n t xa và có th i chc nâng cp h thng, kt hp vi các kin
thc trong sut thi gian hi hc, chúng em nhn thy rng công ngh
FPGA có th ng c các yêu cu trên. Cng vi vic mt h th
c thc hin và có các kt qu kh quan trên phòng Nghiên cu H thng nhúng
và Tính toán kh cu hình (ESRC Lab) ca Vin T Vin Thông, chúng em
quynh ch tài Thiết kế hệ thống IP camera hỗ trợ chuẩn MJPEG trên
nền FPGA ứng dụng trong giám sát và điều khiển từ xa án tt nghip
i hc ca mình.
Sau ba tháng phân tích và thit kc các kt qu : lõi nén
c thc hin thành công, phn mc
Mc tiêu chính ca h thng là thit k c mi dùng theo
dõi u khin các thit b n tng Internet da trên
nn tng FPGA ca Xilinx. Hình c t mt Camera truyn hình
chun PAL s t IC gi - sc nén li
theo chun MJPEG. D lim thc
c gi dùng mi khi có yêu ci dùng mi khi mun xem
thông tin v n quan sát, h cc admin phân quyn và có th s dng các
trình duyc mt phn mm chuyên bit.
Tt camera, mt mch ngoài có các cm bin v nhi m, t
hp vi chu khin các thit b c ni vi mch chính IP camera
qua chun giao tip RS485. Các thit b n này có th u khin t ng
hoc thc hin các chi dùng yêu cu.
Đồ án Tốt nghiệp Đại học
2012
iv
ABSTRACT
The main purpose of this project is to design and implement a Xilinx FPGA platform
based IP camera which has ability to capture images from the supervising place by an
analog camera and control some electrical devices in the field. Images captured from
a camera go through an ADC integrated circuit before being compressed by hardware
(based on JPEG baseline standard) and transmitted to DDR SDRAM. Users, who
have been decentralized by admin, can monitor by accessing to IP address of system
through web-browsers such as Firefox, Chrome or a specialized software.
Additionally, a external board which has ability to mesure environment parameters
connected to the IP Camera board through RS485 protocol.
Đồ án Tốt nghiệp Đại học
2012
vi
2.1 Vi x lý Microblaze [9] 11
2.1.1 Kin trúc 11
2.1.2 Giao din tín hiu 20
2.1.3 Giao din ng dng 24
2.1.4 Kin trúc tp lnh 27
2.2 Kin trúc h thng nhúng vi Microblaze 29
2.3 H u hành Xilkernel [10] 30
2.3.1 Tng quan 30
2.3.2 T chc ca h u hành Xilkernel 31
2.3.3 Xây dng ng dng cho Xilkernel 31
2.4 Kt lu 32
THIT K H THNG 33
3.1 khi nn tng cng cho h thng 33
3.2 Cu hình nn tng phn cng 35
3.3 Khi nén nh MJPEG 36
3.4 Thit k phn mm cho h thng 38
3.4.1 Cn phn mm cho h thng 38
3.4.2 Thit k phn mm cho h thng 43
3.5 Kt lu 48
THIT K LÕI M-JPEG 49
4.1 Khi Ly mu d liu 50
4.1.1 Phân tích ch 50
4.1.2 Thit k chi tit 54
4.1.3 Kt qu tng hp khi 57
4.2 Khi Bii Cosin ri rc (DCT) 58
Đồ án Tốt nghiệp Đại học
2012
viii
4.8.2 Thit k 76
4.8.3 Kt qu tng hp khi 76
4.9 Kt qu tng hp khi nén nh JPEG 77
4.10 Kt lu 77
THIT K PHN MI S DNG 78
5.1 Thit k d liu 78
5.1.1 Chun hóa 78
5.1.2 Chun hóa các bng d liu 79
5.2 Phn mi s dng 89
5.2.1 Ch thng 89
5.2.2 Chn tr h thng 95
5.3 Kt lu 98
KT LUN 99
TÀI LIU THAM KHO 100
BI CHIU THUT NG ANH VIT 102
PH LC 1
Ph lc 1: Code VHDL cho khi Quét zigzag 1
Ph lc 2: H 5 Đồ án Tốt nghiệp Đại học
2012
trí d liu trong mi thanh RAM 56
u vào/ra khi Bii DCT 58
Đồ án Tốt nghiệp Đại học
2012
x
n A
T
59
n A
T
sau khi nhân các h s vi 2
16
60
u vào/ra khng t hóa 62
quét zigzag 8*8 64
h 4.11 Tín hiu vào/ra khi Quét zigzag 64
u vào/ra khi RLE và Delta DC 67
t toán tìm phn t cui cùng khác không trong mt block 68
u vào/ra khi Mã hóa Huffman 71
a các s 72
a các s âm 73
u vào/ra khi AddHeader 74
u vào ra khi FIFO2750 76
thc th liên kt 89
nh 5.2 S dng thread trong C# [19] 90
thut toán vic nhn và hin th d liu 92
n chính theo dõi các camera 94
n chnh sa các thông s ca camera 95
u din byte th a SAV và EAV 52
a SAV và EAV 53
ng mã SAV và EAV 53
t qu tng hp khi ly mu d liu 57
t qu tng hp khi DCT 60
ng t cho tín hiu chói 61
ng t cho tín hiu màu 62
t qu tng hp khng t hóa 63
t qu tng hp khi Quét zigzag 65
t qu tng hp khi RLE và Delta DC 68
ng phân lp các giá tr DC [12] 69
Đồ án Tốt nghiệp Đại học
2012
xii
ng phân lp các giá tr AC [12] 70
u din giá tr ca các s nh phân 11 bit 72
15 Kt qu tng hp khi Mã hóa Huffman 73
t qu tng hp khi AddHeader 75
Kt qu tng hp khi FIFO2750 76
t qu tng hp khi nén nh JPEG 77
trí h thng ip camera (UNF) 80
trí (3NF) 80
trí camera (2NF) 80
ng 5.4 Thông tin v trí camera (3NF) 81
81
IP Camera (UNF) 82
82
n ghi (2NF) 83
Application Specic Integrated Circuit
ASMBL
Advanced Silicon Modular Block
ASSP
Application Specific Standard Product
BTR
Branch Target Register
CLB
Configurable Logic Block
CPLD
Complex Programmable Logic Device
DC
Direct Coefficient
DCM
Digital Clock Manager
DCT
Discrete Cosin Transform
DDR
Double Data Rate
DHCP
Dynamic Host Configuration Protocol
DLL
Delay-Locked Loop
DLMB
Data interface, Local Memory Bus (BRAM only)
DOPB
Data interface, On-chip Peripheral Bus
DPLB
Data interface, Processor LocalBus
DRFSL
FSL
Fast Simplex Link
FSR
Floating Point Status Register
GNU
General Public License
HSTL
High-Speed Transceiver Logic
ICMP
Internet Control Message Protocol
IE
Interrupt Enable
ILMB
Instruction interface, Local Memory Bus
IOB
Input Output Block
IP
Intellectual Property
IPC
Inter-Process Communication
IPLB
Instruction interface, Processor LocalBus
IXCL
Instruction side Xilinx CacheLink interface
JPEG
Joint Photographic Experts Group
LMB
Local Memory Bus
LUT
LookUp Table
PAL
Phase Alternating Lines
PC
Program Counter
PID
Process Identifier Register
PLA
Programmable Logic Array
PLB
Processor Local Bus
PLD
Programmable Logic Device
POSIX
Portable Operating System Interface
PVR
Processor Version Register
RAM
Random Access Memory
RISC
Reduced Instructions Set Computer
RSDS
Reduced Swing Differential Signaling
RTOS
Real-Time Operating Systems
RTP
Real-time Transport Protocol
SAV
Start Active Video
SDRAM
Zone Protection Register
Đồ án Tốt nghiệp Đại học
2012
Trang 1
PHN MỞ ĐU
H thng Intellectual Protocol c Phòng nghiên cu H thng
nhúng và Tính toán kh cu hình (Embeded System and Reconfigurable Computing
Labolatory ESRC Lab) trin khai t c mt vài kt qu kh
quan. C th, h th nén nh theo chun Joint Photographic Experts
Group (JPEG) và ghép li thành lung Motion JPEG (MJPEG) t s
ng hp, có th gi và nhn tín hiu ti/ t i dùng qua mng Ethernet. Nhóm
tác gi c giao di u khin khá
hoàn chnh. Tuy nhiên, h th thành và còn mt vài hn
ch. M nh b First In, First Out (FIFO) trung gian gia
phn cng và phn mm dn vic FIFO b tràn, ch hin th c mt vài khung
nh (frame) do viu khic d liu t phn mm mt khá nhiu thi gian. Hai
là, giao din web hin ti ch có th c mt IP camera m có
ch i dùng.
gii quyt các v trên, nhóm tác gi, gm có hai thành viên: Vũ Hữu Tiệp và
Đỗ Tiến Thànhphân công công vic và gii quyt tng v, c th
Vũ Hữu Tiệp:
o Chun hóa và ti nén nh JPEG.
o S dng b nh Double Data Rate (DDR) Synchronous Dynamic
Random Access Memory c ln và t truy
cp d liu nhanh h gii quyt v tràn b nh và ch
hin th c mt vài frame nh.
Đỗ Tiến Thành:
Chương 1. GIỚI THIỆU CHUNG
Sinh viên thc hiu Tip
u tiên này, nhóm tác gi gii thiu v h thng IP Camera c
thit k i ESRC Lab, báo cáo kh thi và phm vi c ng thi
i thiu công ngh FPGA (Field-Programmable Gate Array), các
công c s d tài và phân tích các yêu cu cha
h thng.
1.1 Giới thiệu
Vi các ch c nêu ph th
c ESRC Lab thit k trên 1.1
text
Mạch điều
khiển mở rộng
1.1
án này, nhóm tác gi s dng li các mch ca h thng trên và thit k li
lõi nén nh MJPEG [1], thit k phn mi dùng và cách giao tip gia
phn cng và phn mm.
Đồ án Tốt nghiệp Đại học
2012
Trang 4
1.2 Tính khả thi của đề tài
1.2.1 Tính khả thi về mặt kỹ thuật
thit k h thng, ta cn mt s yêu cn sau:
Phn cng:
o Camera CMOS (Complementary Metal-Oxide-Semiconductor)
o IC (Intergrated Circuit) gii mã ADV7181B: chuyn tín hi
th, bt li bng các công c phn mm mà hãng h tr.
1.3 Phân tích yêu cầu
1.3.1 Phân tích yêu cầu chức năng của hệ thống
u kin kh thi và các cha h thng mt cách chi tit,
nhóm tác gi
M
P
Windows XP, Windows Vista, Windows 7.
M
Đồ án Tốt nghiệp Đại học
2012
Trang 6
1.3.1.1
Mch IP Camera hoàn chnh cui cùng có các yêu cu v ch
Có kh nh theo chun MJPEG vi t nh truy n 15
frame/s.
Có kh i và nhn thông tin ti/ t i dùng qua cng Ethernet.
Có kh n thông tin t mch m rng và gi các tín hiu khin
xung m
1.3.1.2
eo h thng là mt phn mc thit k giành riêng cho ng dng ca
h thi quan sát có th nhìn các hình c t camera,
quan sát nhiu màn hình và các chu khin thông qua các nút bm. Trong
ng hi dùnn mm thì có th s dng thong qua trình duyt
truy nhp và h thng.
các yêu cu cha phn mc thit kt
cho h thng:
dc (c video trên giao
din chính là dng preview, ph thuc vào s camera cn quan sát, không thay
c).
o H thng có phiên bn dành cho bo mt cao, s dng chun mã hóa
bo mt nâng cao [7] (Advance Encription Standard AES)
trình phi có giao dii khóa mã: khóa mã s
do Admin nhi dng s H o mt, h thng
s t nh báo ni trong ba
tháng t ln gn nhi ca admin. Vic này s c thc hin
bng mt Form cnh báo nh.
Nh n lý ca Admin, ch duy nht Admin có quyn kim
tra hong ca i user truy cp gt và các tác v h
Đồ án Tốt nghiệp Đại học
2012
Trang 8
1.3.1.3
Mch m rng cn có các ch
Nhn thông tin t cm bin nhi n mch IP
Camera.
u khin các thit b n theo ch t ng hoc theo lu khin
nhc t mch IP Camera.
1.3.2 Phân tích yêu cầu phi chức năng của hệ thống
Bên cnh các yêu cu cha h thng là các yêu cu phi cha h
thng. Các yêu cu này quynh tính hi a h th ng hot
ng, các yêu cu v bo mng các yêu c tài này, các yêu
cu phi cha h thng bao gm:
ng hong:
o S d ng làm vi
1.5 Các phần mềm sử dụng trong đề tài
phát trin h th tài là chip ca hãng Xilinx cung
c ng phát trin và công c phát trin h thng logic trên
FPGA là phn mm ca hãng Xilinx, bao gm:
Xilinx EDK (Embedded Development Kit): Công c phát trin h thng
nhúng trên FPGA. Công c này c coi là công c thit k và phát trin h
thng logic trên FPGA, cho phép công cp mt h vi x lý hoàn chnh trên
FPGA gm các IP logic và vi x lý.
Xilinx ISE (Integrated Software Environment): công c phn mm môi
ng tích hp. Công c c coi là công c thit k và phát trin các IP
t k h
thng logic vi Xilinx EDK.
Xilinx ChipScope Pro: công c phn mm tích hp các b phân tích các khi
logic chính, kim tra và tính toán các thành phn phn cng bên trong h
Đồ án Tốt nghiệp Đại học
2012
Trang 10
thng thit k, là công c c s d giao tip gia các thành phn và
cung cp mt gi phân tích các thành phn bên trong h thng.
Phn mm chuyên di dùng s dng các công c phát trin sau:
Visual C# : công c giúp h tr thit k phn mi s dung. Công c
i s dng có th thit k giao din, liên k d liu và
cung ci dùng to h thng phn mm có kh
truyn nhn d liu qua Ethernet
SQL server 2008 : công c phát trin ci s dng to và
qu d liu ca cá nhân.
Bên ct k và phát trii công c mô phng
ki c tính, dng sóng ca tín hiu vào ra ca kh