Design for Implementation of Image Processing Algorithms



Download 3,54 Mb.
Pdf ko'rish
bet15/31
Sana26.02.2022
Hajmi3,54 Mb.
#469635
1   ...   11   12   13   14   15   16   17   18   ...   31
Bog'liq
Design for Implementation of Image Processing Algorithms dsertarsiay

User 
Instruction 
Burst 
Start 
PR 
Instruction 
Operation Resulting 
Opcode 
Non-Processing Commands: 
No Operation 



0x0 
0x00 
Start PR Burst Data 



0x1 
0x61 
Flush MCF 



0x2 
0x02 
Channel Sync 



0x8 
0x08 
CSC Commands: 
Reg-Bus Write 



0x1 
0x81 
Start Pixel Burst 



0x2 
0xC2 
Custom Commands: 
Ld Gradient Counter 



0x5 
0x85 
Table 3.1: Supported Instruction Word Opcodes, modified from [3]. 
The corresponding packet format for the 
Ld Gradient Counter
custom instruction 
word is shown in Figure 3.2. The packet format is very similar to a 
Start PR Data Burst
instruction or a 
Start Pixel Burst Instruction
. The similar format allowed for a very quick 
and effortless implementation of the new instruction. The modified packet format diagram 
is included for completeness and shows how all 8-bytes are used for each instruction. Note 
that gray areas in the figure represent bits that are unused. 
63 
56 55

No Operation 
0x00 
63 
56 55
32 31 

Start PR Data Burst 
0x61 
burst_count 
63 
32 31 



23
PR Burst Data 
pr_word_1 
pr_word_0 
63 
56 55

Flush MCF 
0x02 
63 
56 55
4 3 

Channel Sync 
0x08 
channel_id 
63 
56 55 
50 49 
32 31 

Register Write 
0x81 
reg_addr 
reg_data 
63 
56 55
32 31 

Start Pixel Burst 
0xC2 
burst_count 
63 
48 47 
32 31 
16 15 

Pixel Burst Data 
csc_data_3 
csc_data_2 
csc_data_1 
csc_data_0 
63 
56 55
32 31 

Ld Gradient Counter 
0x85 
pixel_count 
Figure 3.2: Packet Format, Modified from [3]. 


24
Chapter 4:
 
Design for Implementation 
In the previous chapter, the first steps of the GSEG algorithm were modified to 
achieve an efficient implementation in an FPGA. The design flow used during this process 
was documented and a set of design guidelines were generated from observations. The 
design flow and guidelines have been paired to develop a general methodology for tailoring 
algorithms for implementation. In this chapter, the Design for Implementation (DFI) 
methodology is presented in detail. 
4.1
 
Design for Implementation Flow 
In order to justify or validate the algorithm modifications presented in the previous 
chapter, a metric is needed to observe and evaluate changes in the resulting image. With a 
metric selected, a threshold is chosen based on what is considered acceptable image 
degradation for the given application. The selection of image quality metrics and the 
definition of tolerable error serve as the initial step in the DFI flow, which is illustrated in 
Figure 4.1. The image quality metrics used to evaluate the GSEG algorithm modifications 
are discussed in more detail in the next chapter. 


25
Figure 4.1: The Design for Implementation Iterative Flow. 
As mentioned in the Introduction, the next step in the implementation process of an 
algorithm is to replace the intrinsic functions. The reduction of these intrinsic functions to 
fundamental operations, or low-level code, is a vital step since any HDL code needs to be 
written in terms of these operations. The low-level code serves as a basis for justifying all 
modifications made to the original algorithm and is recommended to be written in the same 
high-level programming language as the original image processing algorithm. Next, the 
conversion of the low-level algorithm to C-code is performed. This step is not absolutely 
necessary, but can be used to generate a bit-exact model to compare with future HDL 
results. Finally, functions for different image quality metrics can also be easily written in 
these languages, may even be intrinsic, or exist already. 
Once the sequence of fundamental operations has been detailed in low-level code 
or C-code, the operations are partitioned into pipeline stages. These pipeline stages 
represent a series of operations that can each be performed within a clock cycle, and can 
also serve as intermediate test points. The chosen image quality metrics can be generated 
after each stage in order to validate a small number of algorithm modifications at a time.
In addition to the testing of the fundamental operations, the high-level modeling languages 


26
lend well to the generation of test vectors that are necessary to validate any C and HDL 
code. After laying out the pipeline stages, the design is prototyped using an HDL such as 
Verilog or VHDL. Again, the results generated from the HDL, whether from a test bench 
or emulation, can be verified using the same high-level programming language as before. 

Download 3,54 Mb.

Do'stlaringiz bilan baham:
1   ...   11   12   13   14   15   16   17   18   ...   31




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish