week07 - VHDL Digital System Laboratory
VHDL คืออะไรVHDL เป็นคำย่อของ VHSIC Hardware Description Language ภาษา VHDL นี้เป็นภาษา ที่ใช้สำรับอธิบายพฤติกรรมของวงจรดิจิตอล ด้วยระบบอัตฺโนมัติ ซึ่งใช้กับอุปกรณ์ที่โปรแกรมได้เช่น FPGA(Field-Programmable Gate Array) หรือ ASIC (Application-specific integrated circuits)
VHDL ถูกพัฒนาขึ้นตั้งแต่ปี คศ. 1981 โดยกระทรวงกลาโหมสหรัสอเมริกา(Department of Defense DOD ) ได้ตั้งโครงการเพื่อศึกษาวิธีการที่จะช่วยพํฒนาระบบดิจิตอลที่สามารถนำไปผลิตได้อย่างรวดเร็ว จนถึงปี คศ. 1987 IEEE(Institute of Electrical and Electronics Engineerings ) ได้กำหนดเป็นมาตรฐานของภาษษฉบับ แรก เรียกว่า IEEE 1076-1987 หรือ VHDL'87 ปัจจุบันได้ถูกพัฒนามาแล้วหลายรุ่น
ภาษา VHDL (Hardware Description Lamguage)
HDL เป็นภาษาที่มีวัตถุประสงค์เพื่อใช้สำหรับพัฒนาระบบอิเล็กทรอนิกส์ ซึ่งในปัจจุบันยังครอบคลุมเฉพาะระบบที่เป็น ดิจิตอล ยังไม่ครอบคลุมแบบ อนาลอก มาตรฐานของภาษาต้องมีความสามารถดังนี้
- เขียนขึ้นเพื่อใช้ออกแบบระบบดิจิตอลได้
- ใช้จำลองการทำงานของวงจรได้(Simulation)
- สามารถวิเคราะห์วงจรได้(Systhesis)
- สามารถทดสอบการทำงานได้(Testing)
- ใช้เป็นเอกสารประกอบโครงการได้(Documentation)
เครื่องมือที่ใช้เพื่อออกแบบระบบอิเล็กทรอนิกส์แบบอัตโนมัติหรือ EDA (Electronic Design Automation) ส่วนใหญ่รองรับการทำงานของ VHDL ได้ ซึ่งสามารถนำไปประยุกต์ใช้กับพัฒนา Hardware ระบบดิจิตอลได้หลายๆ ระดับตั้งแต่ใช้พัฒนาเป็นระบบ (System) ระดับบอร์ด (Boards) หรือการออกแบบให้อยู่ในรูปไอซี ซึ่งกฎทำได้หลายชนิดเช่นกัน คือ ไอซีชนิด AISC หรือ ไอซีประเภทโปรแกรมได้ (Programmable Logic Device PLD) ได้แก่ CPLD และ FPGA เป็นต้น ดังนั้นภาษา VHDL จึงมีความสามรถดังต่อไปนี้
- สามารถออกแบบได้หลายระดับจากพฤติกรรมจนถึงระดับเกต
- สนับบสนุนการออกแบบลำดับขั้น(Hierarchy Design)
- สนับสนุนระบบ Library
- สามารถควบคุมเวลาได้
- สามารถทำงานได้ทั้งแบบขนานและแบบลำดับ
- สามารถกำหนดชนิด(Type) ของสัญญาณหรือข้อมูลได้
โดยภายในแลบเราจะได้เขียน code โดยใช้โปรแกรม Xilinx ISE WebPack Design Solfware
ขั้นตอนที่สำคัญในการสร้างดีไซน์ให้ได้ไฟล์บิตสตรีม มีดังนี้
- สร้างโปรเจคใหม่ (Creating a New Project)
- เพิ่มหรือสร้างไฟล์ Source Code (เขียน code ในภาษาอย่างเช่น VHDL หรือ Verilog) ให้เป็นส่วนหนึ่งของโปรเจค (Adding/Creating a Source File)
- เขียนหรือแก้ไขโค๊ด(Editing / Modifying Source Code)
- ทำขั้นตอนการสังเคราะห์วงจรจากโค๊ด(Systhesizing Source Source Code)
- กำหนดตำแหน่งขาให้สัญญาณ I/O ของวงจร และข้อกำหนดอื่นๆ(Assigning Pins + Design Constaints)
- ทำขั้นตอนการแปลงให้วงจรดจิทัลที่ใช้ทรัพยากรของชิป FPGA จัดวางตำแหน่งและหาเส้นทางสัญญาณให้เหมาะสมที่สุด(Performing Mapping, Placement and Rounting Steps)
- สร้างไฟล์บิตสตรีม(Generating Bitstream File) เพื่อนำไปโปรแกรมลงชิปเป้าหมาย
1. สร้างโปรเจคใหม่ New Project
2. กำหนดราบละเอียด อุปกรณ์ และภาษาที่จะใช้
3. เขียนโปรแกรมใหม่หรือเลือกมาจากไฟล์ที่มีอยู่แล้ว
4. สร้างไฟล์เพื่อกำหนดขาอุปกรณ์
5. สังเคราะห์วงจรจากโค๊ด (Syntheszing Source Code) และ Implement
6. สร้างไฟล์บิตสตรีม(Generting Bitstream File) เพือนำไปโปรแกรมลงชิปเป้าหมาย
ความคิดเห็น
แสดงความคิดเห็น