intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Thiết kế hệ thống xử lý ảnh video trên FPGA (CycloneII), chương 12

Chia sẻ: Tran Van Duong | Ngày: | Loại File: PDF | Số trang:13

106
lượt xem
26
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Giao diện đồ họa Sau khi setup MAX+PLUS®II, chúng ta phải setup license cho chương trình MAX+PLUS®II. Nếu không, tuy chương trình được setup xong nhưng MAX+PLUS®II chỉ cho phép dùng một số trình ứng dụng của MAX+PLUS®II, còn lại một số trình ứng dụng khác không thể sử dụng được. Chúng ta có thể tải license trên webside của Altera tại www.Altera.com. Đây chỉ là bảng miễn phí dành cho sinh viên nghiên cứu, không phải là bảng full. Muốn có bảng full, chúng ta phải mua qua mạng. Tuy nhiên, với phiên bản dành cho sinh viên, chúng...

Chủ đề:
Lưu

Nội dung Text: Thiết kế hệ thống xử lý ảnh video trên FPGA (CycloneII), chương 12

  1. Chi tieát phaàn meàm Chương 12: MAX+PLUS®II cuûa ALTERA 1. Giao dieän ñoà hoïa Sau khi setup MAX+PLUS®II, chuùng ta phaûi setup license cho chöông trình MAX+PLUS®II. Neáu khoâng, tuy chöông trình ñöôïc setup xong nhöng MAX+PLUS®II chæ cho pheùp duøng moät soá trình öùng duïng cuûa MAX+PLUS®II, coøn laïi moät soá trình öùng duïng khaùc khoâng theå söû duïng ñöôïc. Chuùng ta coù theå taûi license treân webside cuûa Altera taïi www.Altera.com. Ñaây chæ laø baûng mieãn phí daønh cho sinh vieân nghieân cöùu, khoâng phaûi laø baûng full. Muoán coù baûng full, chuùng ta phaûi mua qua maïng. Tuy nhieân, vôùi phieân baûn daønh cho sinh vieân, chuùng ta coù theå laäp trình ñöôïc. Khi setup hoaøn taát, Start
  2. Hình: Giao dieän ñoà hoaï cuûa MAX+PLUS®II MAX+PLUS®II MANAGER laø cöûa soå ñaàu tieân cuûa MAX+PLUS®II. MAX+PLUS®II MANAGER cung caáp nhöõng leänh thoâng duïng cho taát caû nhöõng öùng duïng cuûa MAX+PLUS®II. Khi chuùng ta môû hay taïo moät file môùi, moät cöûa soå thích hôïp môû ra moät caùch töï ñoäng vôùi nhöõng chöùc naêng ñieàu khieån töông öùng vôùi file ñoù. 2. Caùc taùc vuï trong MAX+PLUS®II MANAGER a. Trình soaïn thaûo cuûa MAX+PLUS®II MANAGER (Text Editor) Trình soaïn thaûo cuûa MAX+PLUS®II laø moät coâng cuï raát linh hoaït trong thieát keá baèng ngoân ngöõ VHDL vaø AHDL. Text Editor ñöôïc môû treân thanh toolbar hay töø menu file. Ngay laäp töùc cöûa soå Text Editor ñöôïc môû vôùi teân maëc ñònh cho project hieän haønh laø untiled1, coù theå ñaët teân laïi baèng Save As trong menu file.
  3. Khi thieát keá ngoân ngöõ VHDL phaûi ñaët teân file coù ñuoâi *.vhd. Neáu thieát keá baèng ngoân ngöõ AHDL thì coù ñuoâi *.tdf. Ngoaøi ra, khi duøng Text Editor, coù theå löu file vôùi baát cöù daïng naøo daønh cho thieát keá nhö:  Altera Design File *.acf  EDIF Input File *.edf  Graphic Design File *.gdf  Verilog Design File *.v  VHDL Desig File *.vhd  Waveform Design File *.wdf  Xilinx Netlist Format File *.xnf Töø cöûa soå Text Editor, coù theå kieåm tra ngöõ phaùp trong ngoân ngöõ VHDL, thöïc hieän vieäc bieân dòch, moâ phoûng. Text Editor cuõng cho pheùp chænh söûa, caét, daùn, … b. Trình bieân dòch Compiler MAX+PLUS®II Trình bieân dòch Compiler cuûa MAX+PLUS®II laø moät trình xöû lyù töï ñoäng hoaù thieát keá raát maïnh, coù theå chuyeån ñoåi caùc file thieát keá thaønh caùc file input, output cho caùc thieát keá laäp trình, moâ phoûng vaø phaân tích thôøi gian. Trình bieân dòch compiler hôn caû moät trình xöû lyù ñôn giaûn, laø chöông trình öùng duïng quan troïng nhaát trong MAX+PLUS®II. Trình bieân dòch lieân keát caùc thieát keá laø chöông trình trung gian ñeå chuyeån ñeán xöû lyù caùc chöông trình öùng duïng khaùc nhau nhö: moâ phoûng (simulator), phaân tích ñònh thôøi (timing analyzer) vaø boä laäp trình programmer.
  4. Chuùng ta coù theå choïn linh kieän cho project ñang bieân dòch hay cho chöông trình Compiler töï ñoäng choïn linh kieän thích hôïp trong hoï linh kieän cuûa chuùng. Ñeå xaùc ñònh hoï linh kieän:  Choïn Device (Assign menu). Hoäp thoaïi Device ñöôïc trình baøy.  Click vaøo muõi teân trong khung Device Family ñöôïc hoã trôï bôûi MAX+PLUS Choïn FLEX10K neáu noù chöa ñöôïc choïn  Kieåm tra linh kieän trong Device box. Baät chöùc naêng Show Only Fastest Speed Grades vaø quan saùt.  Choïn AUTO trong baûng Device vaø click OK. Hình: Hoäp thoaïi Device Trình bieân dòch cuûa MAX+PLUS®II seõ bieân dòch caùc file coù daïng ñuoâi sau: *.tdf, *.edf, *.vhd, *.scf, … Cuøng hoaït ñoäng song song vôùi trình bieân dòch laø trình xöû lyù loãi cuûa MAX+PLUS®II (MAX+PLUS®II MESSAGE PROCESSOR), cho pheùp xaùc ñònh caùc loãi trong file thieát keá, caùc loãi seõ luoân ñöôïc doø tìm trong suoát quaù trình bieân dòch moät project.
  5. Khi trình bieân dòch hoaït ñoäng, noù seõ thöïc hieän moät chuoãi caùc chöông trình con, moãi chöông trình con thöïc hieän moät chöùc naêng khaùc nhau vaø taïo ra nhöõng file khaùc. Chuù yù: Caùc daïng file chöông trình:  Flex Chain File (*.fcf): Chuoãi caùc file kieåu kieán truùc FLEX.  Hexadecimal (Intel format) (*.hex): file thaäp luïc theo ñònh daïng cuûa Intel.  JEDEC File (*.jed)  JTAG Chain File (*.jcf)  Programmer Object File (*.pof)  Row Binary File (*.rbf)  Serial Bitstream File (*.sbf): löu caáu hình duøng cho FLEX 8000 vaø FLEX 10K  Serial Vector File (*.SVF): file chöùa thoâng tin cuûa thieát bò trong moâi tröôøng laäp trình coù kieåu ATE söû duïng coâng ngheä MAX 7000.  Sram Object File (*.sof):File nhò phaân ñeå laäp caáu hình cho FLEX 8000 vaø FLEX 10K  Tabular Text File (*.ttf): Daïng file vaên baûn phaúng
  6. Hình: Hoäp thoaïi Compiler Nhaán Start ñeå baét ñaàu bieân dòch Nhaán Stop (Stop/Show status) ñeå döøng bieân dòch Daïng File vaên baûn phaúng *Tieán trình laøm vieäc cuûa Compiler Ñaàu tieân, trình bieân dòch trích ra nhöõng thoâng tin ñònh nghóa söï keát noái moâ hình phaân caáp vôùi caùc file thieát keá. Sau ñoù, kieåm tra loãi treân toång theå project. Tieáp theo, Compiler taïo ra sô ñoà toå chöùc cuûa project ñoù, sô ñoà naøy bao goàm taát caû caùc thieát keá beân trong. Nhaán vaøo Start bieân dòch chöông trình hieän haønh, cuõng coù theå bieân dòch baèng caùch choïn Project Save & Compiler hay Project Save, Compiler & Simulator. Muoán döøng chöông trình bieân dòch nhaán Stop. Khi Compiler ñang phaân chia hay ñieàu chænh caùc thieát bò cho Project, khoái Partitioner / Filter Status baét ñaàu chuyeån sang maøu xanh döông thì nuùt Stop chuyeån thaønh nuùt Stop/Show Status.
  7. Khi choïn nuùt naøy, hoäp thoaïi Stop/Show Status ñöôïc môû, hieån thò baûng traïng thaùi caùc thieát bò ñang ñöôïc gaùn vaø phaân chia ñoàng thôøi ngöøng bieân dòch vaø phaùt sinh moät file baùo caùo Neáu moät project quaù lôùn, trình bieân dòch töï ñoäng phaân chia thaønh nhieàu thieát bò (Device Family) c. Trình Waveform Editor cuûa MAX+PLUS®II Waveform Editor laø moät öùng duïng linh hoaït vôùi hai chöùc naêng: laø moät coâng cuï ñeå thieát keá vaø laø moät coâng cuï ñeå höôùng vaøo coâng vieäc moâ phoûng, laø cöûa soå ñeå hieån thò keát quaû sau khi moâ phoûng. Beân trong öùng duïng naøy coù theå taïo caùc file coù daïng WDFs (.wdf) goàm thieát keá logic cho project hoaëc caùc file SCFs (.scf) chöùa caùc vector input daønh cho moâ phoûng. Duøng waveform Editor cho coâng vieäc kieåm tra thieát keá: Trình Waveform Editor cho pheùp taïo môùi input vectors daønh cho vieäc moâ phoûng trong khuoân maãu daïng soùng (Waveform Format). Moät caùch ñôn giaûn, coù theå duøng Waveform Editor taïo môùi moät file .scf ngaàm ñònh (default SCF) töø file .snf cuûa project. Caû hai trình Simulator vaø Waveform Editor cuûa MAX+PLUS®II ñeàu cho pheùp xem keát quaû cuûa coâng vieäc moâ phoûng vaø kieåm tra chöùc naêng löu laïi taát caû nhöõng thieát keá ñöôïc taïo ra bôûi ngöôøi duøng (usre_defined), do trình simulator sinh ra (simylator_generated), hoaëc caùc thieát bò output hieän thôøi vaøo moät file SCF (.scf: simulator channel file). Caùc output moâ phoûng coù theå ñöôïc so saùnh vôùi caùc output do ngöôøi duøng taïo ra trong SCF hieän thôøi, hoaëc so saùnh vôùi caùc output thieát bò hieän thôøi ñang hieån thò caùc keát quaû cuûa chöùc naêng kieåm tra.
  8. Khoâng caàn quan taâm ñeán muïc ñích laø: ñi vaøo söï thieát keá hay kieåm tra thieát keá taïo ra, vaãn coù theå taän duïng thuaän lôïi caùc ñaëc ñieåm cuûa Waveform Editor. Deã daøng thay ñoåi daïng soùng – coù 2 daïng soùng: whole waveform (khoâng giaùn ñoaïn) vaø waveform intervals (giaùn ñoaïn) vaø taïo môùi. Choïn loïc, caét xeùn, theâm bôùt nodes vaø groups. Chæ vôùi moät vaøi leänh ñôn giaûn, coù theå taïo ra moät Table File (.tbl: baûng lieät keâ taát caû caùc input vector vaø output vector logic trong Vector file (goàm nhöõng vector chæ ra möùc logic cuûa caùc nodes input trong project maø trình moâ phoûng duøng file naøy ñeå kieåm tra söï logic cuûa caùc toaùn töû trong project) ñeå taïo ra nhöõng file SCF, WDF. Coù theå löu WDF nhö SCF vaø thay ñoåi noù cho coù muïc ñích moâ phoûng hoaëc chuyeån ñoåi SCF sang WDF ñeå duøng nhö moät daïng file thieát keá. d. Trình moâ phoûng cuûa MAX+PLUS®II Trình moâ phoûng cuûa MAX+PLUS®II (MAX+PLUS®II simulator) laø moät coâng cuï raát maïnh ñeå kieåm tra söï logic vaø toái öu thôøi gian cho moät project. Vì simulator cho pheùp kieåm tra laïi project khi noù thaät söï chuyeån giao ñeán phaàn cöùng, noù coù theå thu ngaén thôøi gian, laøm bieán daïng thieát keá ban ñaàu thaønh silicon laøm vieäc. Simulator coøn cho pheùp taùi taïo moät project troïn veïn maø khoâng quan taâm ñeán phaûi coù bao nhieâu thieát bò ñeå thöïc thi noù. Simulator hoã trôï moâ phoûng cho moät project ôû cheá ñoä interactive (interrective mode: môû cöûa soå heát maøn hình) baèng caùch thöïc hieän leänh taïi menu, hay choïn Option “on_screen”, hay choïn cheá ñoä patch (moät cheá ñoä hoaït ñoäng cuûa simulator maø ñöôïc thöïc hieän töø file command (*.cmd)).
  9. Khi choïn moät trong hai cheá ñoä: interactive mode (cheá ñoä töông taùc) hay patch mode (cheá ñoä teäp), trình moâ phoûng khoâng nhöõng töï ñoäng load project hieän haønh maø phaûi luoân luoân döïa theo kieåu cuûa file SNF, file SNF laø file môùi nhaát ñöôïc sinh ra töø trình bieân dòch, keát hôïp caùc functional, timing, hay lieân keát moâ hình moâ phoûng vôùi nhau. Hình: Trình moâ phoûng cuûa MAX+PLUS®II Function SCF (Function Simulator Netlist File: file ñònh daïng nhò phaân, ñöôïc taïo ra töø chöông trình Compiler’s Function Extractor goàm nhöõng thoâng tin logic caàn cho chöùc naêng moâ phoûng) coù tröôùc caû: toång hôïp logic (logic synthesis). Partitioning vaø fitting ñöôïc thöïc thi. Duø chöùc naêng cuûa Simulator cuõng cho pheùp moâ phoûng taát caû caùc node trong moät project. Trong chöùc naêng cuûa Simulator, thay ñoåi caùc möùc logic (0, 1, X, Z) cuûa coång output cuøng thôøi ñieåm nhö input vector vaø ñoä deã lan truyeàn (delay) khoâng ñöôïc duøng suoát quaù trình moâ phoûng. Ngöôïc laïi, thôøi gian moâ phoûng duøng trong file timing SNF chöùa nhöõng thoâng tin duøng cho moät project hoaøn chænh, nghóa laø chæ moâ phoûng nhöõng node coù söï toång hôïp toàn taïi Moät file SNF lieân keát (linked SNF) duøng cho moâ phoûng ña project (multi_project) coù theå coù caû hai thoâng tin vaø/hay chöùc
  10. naêng. File lieân keát SNF ñöôïc taïo ra khi bieân dòch moät super_project, moät super_project goàm caùc file lieân keát möùc top (top_level design file) goàm coù symbol vaø instance ( trong graphic editor, caùc instance laø nhöõng ID number, trong giaûn ñoà soùng noù laø teân caùc node) ñaïi dieän cho moãi project. Söï giaû laäp chöùc naêng, ñònh thôøi lieân keát ñöôïc thöïc thi taïi thôøi ñieåm quaù 0.1ns. Coù theå taêng toác quaù trình giaû laäp ñònh thôøi baèng caùch cho pheùp chöông trình Compiler thay theá nhöõng phaàn cuûa toå hôïp logic trong file timing SNF vôùi moâ hình ñoäng. Moãi moâ hình ñoäng ñaïi dieän cho moät maïng löôùi toå hôïp logic ñaëc bieät naøo ñoù. Thay vì bieân dòch taát caû caùc logic trong maïng löôùi toå hôïp, boä Simulator coù theå tham chieáu ñeán moät moâ hình ñoäng laøm ñaïi dieän, do ñoù giaûm ñöôïc thôøi gian giaû laäp. Simulator duøng file SNF hay vector file nhö nguoàn moâ phoûng cuûa caùc input vector. Vôùi trình Waveform Editor, coù theå taïo môùi moät file SNF maëc ñònh tröïc tieáp töø file SNF cuûa project vaø chænh söûa ñeå cung caáp cho caùc vector input. Neáu taïo môùi moät file vector, Simulator töï ñoäng taïo môùi moät file SCF töø vector file tröôùc khi giaû laäp baét ñaàu. SCF bao goàm caùc coång output vaø boû qua caùc node daønh cho project. Trong quaù trình kieåm thöû söï giaû laäp hay chöùc naêng, giaûn ñoà soùng cuûa coång vaøo coøn laïi trong file SCF khoâng thay ñoåi. Output vaø caùc möùc logic bò boû qua trong file SCF ñöôïc caäp nhaät hay giöõ laïi vaø so saùnh vôùi caùc output khaùc tuyø theo söï ñaëc taû cuûa ngöôøi tieâu duøng. Simulator cho pheùp kieåm tra caùc output giaû laäp ngöôïc laïi caùc output trong file SCF. Caùc output coù theå coù caùc output môùi, caùc output cuûa quaù trình moâ phoûng tröôùc ñoù hay output cuûa thieát bò hieän haønh.
  11. MAX+PLUS®II cuõng thöïc thi chöùc naêng kieåm thöû ñeå so saùnh caùc output cuûa moät thieát bò laäp trình coù ngöôïc laïi vôùi caùc output giaû laäp khoâng. Maët khaùc, Simulator cuõng chính laø maøn hình cho project ñaùp laïi oscillation (moät möùc logic khoâng chaéc chaén treân moät tín hieäu) hay thieát laäp (setup) vaø giöõ (hold) thôøi gian giôùi haïn. Vôùi giaûn ñoà soùng (Wave Editor) coù theå thaáy file SCF khi chöông trình simulator maõ hoaù noù. Coù theå löu caùc output giaû laäp trong moät table file. e. Trình soaïn thaûo ñoà hoaï cuûa MAX+PLUS®II Trình soaïn thaûo ñoà hoïa MAX+PLUS®II (Graphic Editor) laø moät chöông trình giöõ chöùc naêng ñoà hoïa tinh vi, cho pheùp ñi vaøo caû hai daïng thieát keá töø ñôn giaûn ñeán phöùc taïp moät caùch deã daøng. Moät file Graphic Editor keát hôïp chaët cheõ vôùi thieát keá logic baèng caùch ñöa moãi symbol vaøo trong moät thieát keá phaân caáp. Coù theå choïn symbol töø thö vieän, chöùa treân 300 megafunctions, primitives ñöôïc Altera hoã trôï hay duøng caùc symbol macrofunction cuûa chính ngöôøi söû duïng maø ñöôïc moâ taû trong file thieát keá khaùc. Theâm vaøo ñoù coù theå keát hôïp töï do caùc file GDF vôùi nhöõng kieåu file thieát keá khaùc beân trong. Vôùi cöûa soå Symbol Editor, ta coù theå nhìn, taïo môùi vaø söõa ñoåi caùc bieåu töôïng trong file thieát keá. Nhöõng Symbol naøy sau ñoù ñöôïc duøng trong nhöõng bieåu ñoà taïo bôûi Graphic Editor.
  12. Hình: Giao dieän trình soaïn thaûo Graphic Editor Hình: Giao dieän Symbol Editor Caû Graphic Editor vaø Symbol Editor ñeàu deã daøng cho vieäc thieát keá vaø edit bieåu ñoà. Cuï theå, Graphic Editor cho pheùp taïo môùi vaø söûa ñoåi moät file GDF chöùa ñöïng vaøi megafunetion, megafunetion keát hôïp laïi vaø caùc primitive symbol. Graphic Editor cuõng cho pheùp môû caùc file daïng Orcard Schematic- moät file coù phaàn môû roäng .sch vaø löu noù nhö moät file GDF. Moät file Graphic Editor keát hôïp chaët cheõ vôùi thieát keá logic, baèng caùch ñöa moãi caùi symbol vaøo trong moät thieát keá phaân caáp. Coù theå choïn töø caùc thö vieän, chöùa ñöïng treân 300 megafunction, primitive ñöôïc Altera hoã trôï, hoaëc duøng caùc symbol
  13. macrofunction cuûa chính ngöôøi söû duïng ñaõ ñöôïc moâ taû trong caùc file thieát keá khaùc. Theâm vaøo ñoù, coù theå keát hôïp töï do caùc file GDF vôùi kieåu file thieát keá khaùc trong moät project phaân caáp. Max+plus II cuõng töï ñoäng taïo ra moät symbol ñaïi dieän cho file thieát keá baát kyø naøo coù theå söû duïng Symbol Editor tuøy bieán cho caùc loaïi file daïng Symbol File vaø söû duïng baát kyø toå hôïp naøo trong moât file GDF. Khi moät symbol ñaõ ñöôïc chænh söûa, vaãn coù theå deã daøng caäp nhaät noù vaøo trong moät file GDF. Vôùi trình Graphic Editor cuûa Max+Plus II coù theå keát noái caùc symbol laïi baèng caùch keùo töøng nodes vaø bus, coøn coù theå chæ noái caùc symbol döïa treân teân cuûa noù. Maët khaùc duøng nhöõng primitive arrays ñeå moâ taû cho ña symbol (multilple symble) maø ñaõ ñöôïc nhoùm laïi coù logic. Khi dòch chuyeån symbol hoaëc vuøng(area) trong Graphic Editor, coù theå söû duïng rubberbanding (moät ñaëc ñieåm cuûa trình Graphic vaø Symbol Editor, khi ñöôïc choïn seõ cho pheùp dòch chuyeån symbol vaø area maø khoâng laøm maát tính lieân keát cuûa caùc tín hieäu). Coù theå laät, quay caùc node, caùc area, thay ñoåi cheá ñoä nhìn cuûa file laø ‘in room’ hay ‘out room’. Taát caû caùc Editor daønh cho thieát keá cuûa Max+Plus II ñeàu cho pheùp keát naïp thoâng soá (parameter), thieát bò(device), gaùn nguoàn taøi nguyeân(resource assignments) vaø node khôûi ñaàu (source), node keát thuùc (destination) cho vieäc phaân tích thôøi gian.
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2