Sổ tay lập trình VHDL
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Sổ tay lập trình VHDLSổ tay lập trình VHDLebooks@free4vn.orgCreated by lythanhthuan@free4vn.orgGiíi thiÖu ng«n ng÷ VHDL3.1. C¸c cÊu tróc c¬ b¶n cña ng«n ng÷ VHDL. C¸c thµnh phÇn chÝnh x©y dùng trong ng«n ng÷ VHDL ®îc chia ra thµnh n¨m nhãm c¬ b¶n nh sau: - Entity - Architecture - Package - Configuration. - Library. Entity: Trong mét hÖ thèng sè, th«ng thêng ®îc thiÕt kÕ theo mét sù xÕp chång c¸c modul, mµ mçi Modul nµy t¬ng øng víi mét thùc thÓ thiÕt kÕ ( §îc gäi lµ Entity ) trong VHDL. Mçi mét Entity bao gåm hai phÇn : - Khai b¸o thùc thÓ ( Entity). - Th©n kiÕn tróc ( Architecture Bodies ) Mét khai b¸o Entity ®îc dïng ®Ó m« t¶ giao tiÕp bªn ngoµi cña mét phÇn tö (component), nã bao gåm c¸c khai b¸o c¸c cæng ®Çu vµo, c¸c cæng ®Çu ra cña phÇn tö ®ã. PhÇn th©n cña kiÕn tróc ®îc dïng ®Ó m« t¶ sù thùc hiÖn bªn trong cña thùc thÓ ®ã. Packages: C¸c ®ãng gãi chØ ra th«ng tin dïng chung, mµ c¸c th«ng tin nµy ®îc sö dông bëi mét vµi Entity nµo ®ã. Configuration: §Þnh cÊu h×nh, nã cho phÐp g¾n kÕt c¸c thÓ hiÖn cña phÇn tö cÇn dïng nµo ®ã cña mét thiÕt kÕ nµo ®ã cã d¹ng mét cÊu tróc vµ ®a c¸c thÓ hiÖn nµy vµo trong cÆp Entity vµ Architecture. Nã cho phÐp ngêi thiÕt kÕ cã thÓ thö nghiÖm ®Ó thay ®æi c¸c sù thùc thi kh¸c nhau trong mét thiÕt kÕ. Mçi mét thiÕt kÕ d¹ng VHDL bao gåm mét vµi ®¬n vÞ th viÖn, mµ mét trong c¸c th viÖn nµy ®îc dÞch s½n vµ cÊt trong mét th viÖn thiÕt kÕ.3.1.1 Khai b¸o Entity:Nh trªn ®· ®Ò cËp, phÇn khai b¸o Entity chØ ®a ra mét c¸i nh×n phÝa bªn ngoµi cu¶ mét phÇn tö mµ kh«ng cung cÊp th«ng tin vÒ sù thùc hiÖn cña phÇn tö ®ã nh thÕ nµo. Có ph¸p khai b¸o cña mét Entity nh sau: Entity entity_name is [generic (generic_declaration);] [port (port_declaration);] {entity_declarative_item {constants, types, signals};} end [entity_name]; [] : DÊu ngoÆc vu«ng chØ ra c¸c tham sè cã thÓ lùa chän. | : DÊu g¹ch ®øng hiÓn thÞ mét sù lùa chän trong sè c¸c lùa chän kh¸c. {} : Khai b¸o mét hoÆc nhiÒu c¸c ®èi tîng, mµ c¸c ®èi tîng nµy cã thÓ ®îc ®Þnh nghÜa bëi ngêi dïng. a. Khai b¸o Generic dïng ®Ó khai b¸o c¸c h»ng mµ chóng cã thÓ ®îc dïng ®Ó ®iÒu khiÓn cÊu tróc vµ sù ho¹t ®éng cña Entity. Có ph¸p cña khai b¸o nµy nh sau: generic ( constant_name : type [:=init_value] {;constant_name: type[:=init_value]}); ë ®©y tªn h»ng constant_name chØ ra tªn cña mét h»ng d¹ng generic (h»ng dïng chung). KiÓu (Type) ®îc dïng ®Ó chØ ra kiÓu d÷ liÖu cña h»ng. init_value : chØ ra gi¸ trÞ khëi t¹o cho h»ng. b. Khai b¸o cæng ( Port ): §îc dïng ®Ó khai b¸o c¸c cæng vµo, ra cña Entity. Có ph¸p cña khai b¸o nµy nh sau: Port ( port_name : [mode] type [:= init_value] {; port_name:[mode] type [:=init_value]}); port_name ®îc dïng ®Ó chØ ra tªn cña mét cæng, mode chØ ra híngvµo ra cña tÝn hiÖu t¹i cæng ®ã. Type chØ ra kiÓu d÷ liÖu cña mét cæng vµ init_value chØ ra gi¸ trÞ khëi t¹o cho cæng ®ã. Chó ý ! Víi VHDL kh«ng ph©n biÖt ch÷ hoa vµ ch÷ thêng, ch¼ng h¹n nh : xyz = xYz = XYZ. * Cã bèn mode ®îc sö dông trong khai b¸o cæng : - in : chØ cã thÓ ®îc ®äc, nã chØ ®îc dïng cho c¸c tÝn hiÖu ®Çu vµo ( chØ ®îc phÐp n»m bªn ph¶i phÐp g¸n ) - out : ChØ ®îc dïng ®Ó g¸n gi¸ trÞ, nã chØ ®îc dïng cho c¸c cæng ®Çu ra ( Nã chØ ®îc n»m bªn tr¸i cña phÐp g¸n ). - inout : Cã thÓ ®îc dïng ®Ó ®äc vµ g¸n gi¸ trÞ. Nã cã thÓ cã nhiÒu h¬n mét híng ®iÒu khiÓn ( Cã thÓ n»m ë bªn tr¸i hoÆc bªn ph¶i phÐp g¸n ). - Buffer : Cã thÓ ®îc dïng ®Ó ®äc vµ g¸n gi¸ trÞ. ( Cã thÓ n»m ë bªn tr¸i hoÆc bªn ph¶i phÐp g¸n ). inout lµ mét cæng hai híng, cßn Buffer lµ mét cæng kh«ng cã híng. c. entity_declarative_item : §îc dïng ®Ó khai b¸o c¸c h»ng, kiÓu d÷ liÖu, hoÆc tÝn hiÖu mµ nã cã thÓ ®îc sö dông trong khi thùc hiÖn cña mét Entity. d. VÝ dô : * VÝ dô vÒ khai b¸o c¸c cæng vµo ra: entity xxx is port ( A : in integer ; B : in integer ; C : out integer ; D : inout integer ; E : buffer integer) ; end xxx; architecture bhv of xxx isbegin process (A,B) begin C
Tìm kiếm theo từ khóa liên quan:
Sổ tay lập trình VHDL Ngôn ngữ VHDL Cấu trúc cơ bản của VHDL Đối tượng của dữ liệu Các kiểu dữ liệu Các toán từ Ngôn ngữ lập trìnhTài liệu cùng danh mục:
-
Tìm hiểu về lỗi tràn bộ đệm (Buffer Overflow)
5 trang 364 0 0 -
Giáo trình Cấu trúc dữ liệu và thuật toán trên C++
74 trang 344 0 0 -
Bài giảng Phân tích thiết kế phần mềm: Chương 7 - Trường ĐH Ngoại ngữ - Tin học TP.HCM
16 trang 335 0 0 -
180 trang 274 0 0
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 253 0 0 -
173 trang 248 2 0
-
Bài giảng Phân tích thiết kế và giải thuật - Chương 2: Kỹ thuật thiết kế giải thuật
80 trang 244 0 0 -
Kiến thức phần cứng máy tính - Sửa chữa nâng cấp và cài đặt máy tính xách tay Tập 2
483 trang 243 3 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 242 0 0 -
Bài giảng Phân tích thiết kế phần mềm: Chương 6 - Trường ĐH Ngoại ngữ - Tin học TP.HCM
12 trang 240 0 0
Tài liệu mới:
-
118 trang 0 0 0
-
108 trang 0 0 0
-
Luận văn Thạc sĩ Quản lý kinh tế: Tăng cường quản lý vốn tại Công ty cổ phần cấp nước tỉnh Lào Cai
130 trang 0 0 0 -
99 trang 0 0 0
-
109 trang 0 0 0
-
Luận văn Thạc sĩ Quản lý kinh tế: Quản lý nhân viên kỹ thuật tại Viễn thông Nghệ An
111 trang 0 0 0 -
117 trang 0 0 0
-
110 trang 0 0 0
-
Nét thanh lịch của người Hà Nội qua văn hóa dân gian
5 trang 0 0 0 -
11 trang 0 0 0