目录

  • 前言
  • 新建工程
  • 输入设计代码
  • 输入测试平台代码
  • 对应名称设置
  • 仿真(综合前)
  • 综合
  • 仿真(综合后)
  • 布局布线约束
  • 仿真(布局布线后)
  • 烧录

前言

广东工业大学计算机学院EDA数字逻辑实验软件Libero完整设计流程,本文以74HC148进行举例讲解

新建工程



选好后直接点击finish

输入设计代码


双击Create HDL

点击OK

输入功能描述代码,该HDL代码文件保存于项目文件夹"\hdl"子目录下(以74HC148的功能描述代码为例)

//74HC148代码module encoder8_3_1(din, EI, GS, EO, dout);input [7:0] din;  input EI;  output [2:0] dout;  output GS;  output EO;  reg [2:0] dout;reg GS, EO;always @(din or EI)if(EI) begin dout <= 3'b111; GS <= 1; EO <= 1; end  else if (din[7] == 0) begin dout <= 3'b000; GS <= 0; EO <= 1; endelse if (din[6] == 0) begin dout <= 3'b001; GS <= 0; EO <= 1; endelse if (din[5] == 0) begin dout <= 3'b010; GS <= 0; EO <= 1; endelse if (din[4] == 0) begin dout <= 3'b011; GS <= 0; EO <= 1; endelse if (din[3] == 0) begin dout <= 3'b100; GS <= 0; EO <= 1; endelse if (din[2] == 0) begin dout <= 3'b101; GS <= 0; EO <= 1; endelse if (din[1] == 0) begin dout <= 3'b110; GS <= 0; EO <= 1; endelse if (din[0] == 0) begin dout <= 3'b111; GS <= 0; EO <= 1; endelse if (din == 8'b11111111) begin dout <= 3'b111; GS <= 1; EO <= 0; end else begin dout <= 3'b111; GS <= 1; EO <= 1; end
endmodule


点击√:检查代码是否有误

输入测试平台代码

双击Create HDL Testbench


点击OK
输入测试平台代码,该HDL Testbench代码文件保存于项目文件夹"\stimulus"子目录下(以74HC148的测试平台代码为例)

`timescale 1ns/1psmodule testbench8_3_1();reg EI;reg [7:0] din;wire EO;wire GS;wire [2:0] dout;encoder8_3_1 i1 (.EI(EI), .EO(EO), .GS(GS), .din(din), .dout(dout));initial                                                begin                                                  EI = 1;din = 8'b11111111;#10 EI = 0;#10 din = 8'b01010101;#10 din = 8'b10101010; #10 din = 8'b11010101;#10 din = 8'b11101010;#10 din = 8'b11110101;#10 din = 8'b11111010;#10 din = 8'b11111101;#10 din = 8'b11111110;#10 din = 8'b11111111;          end                      endmodule

点击√:检查代码是否有误

对应名称设置


点击图片右上角的设置

点击DO file

将名称对应地设置好

点击Save进行保存,然后关闭该窗口

仿真(综合前)


点击Simulate,会自动显示出波形图

将滑块拉至最左边,通过放大镜/放小镜进行缩放显示

用完后记得关闭窗口

综合


双击Synthesize

仿真(综合后)


点击Synthesize的Simulate,会自动显示出波形图

用完后记得关闭窗口

布局布线约束


点击Create/Edit I/O Attributes


点击Layout

点击OK

Layout已被点绿

点击Back-Annotate

点击OK

Back-Annotate已被点绿


点击Programing File

点击Finish

点击Generate

Programing File已被点绿


点击I/O Attributes Editor

IN:接输入
OUT:接输出
Pin Number:接线口

可以自定义接线口,编写完成后Ctrl+s保存,将Layout、Back-Annotate、Programing File重新点绿

对照着接完线后记得关闭窗口

仿真(布局布线后)


点击Simulate,会自动显示出波形图

用完后记得关闭窗口

烧录


右键点击"Progrm Device",选择Open Interactively


点击Refresh刷新出烧录设备及其参数


点击PROGRAM进行烧录,等待烧录完成即可

注意:若显示的是RUN而不是PROGRAM,需手动加载编程文件

点击Configuration

点击Load

点击PDB文件,点击打开

显示出PROGRAM

EDA实验·Libero设计流程相关推荐

  1. 《硬件仿真(Emulation)EDA工具前端设计流程》

    硬件仿真(Emulation)EDA工具设计流程总结,仅介绍必要设计步骤,具体详细步骤由于公司机密,暂不详细说明. 文章目录 前言 1. Emulation 1.1 什么是Emulation 1.2 ...

  2. [EDA]FPGA/CPLD 设计流程步骤及步骤概念

    EDA(以 FPGA/CPLD 设计为例)流程步骤 1.设计输入 2.全程编译 3.仿真验证 4.编程下载 5.硬件测试 设计输入 原理图/HDL文本编辑或其他输入方式把电路系统输入到EDA平台中. ...

  3. FPGA 学习之路(一)EDA软件设计流程

    以QuartusII13.0EDA软件为例,介绍Verilog文本输入的EDA设计流程. 1.首先在D盘或G盘等新建一个文件夹,用英文字母命名,例如建立文件夹SY1. FPGA工程目录 : dev: ...

  4. [EDA]实验2A:设计M=12的计数器

    [EDA]实验2A:设计M=12的计数器 一.实验内容 用161计数器芯片,设计一个M=12的计数器 上电后,对CLK信号,从0顺序计数到11,然后回绕到0 当计数值为11的CLK周期,溢出信号OV输 ...

  5. IC-CAD IC 设计流程及 EDA 工具

    IC 设计流程是每个 IC 从业者的必修课,虽然多数人的从业方向只是 IC 设计流程中的一部分,但是了解 IC 设计流程全貌对正确认识每个 IC 设计环节的作用是有很大帮助的. 对于一个 CAD 来说 ...

  6. 搭建属于自己的数字IC EDA环境(五):搭建FPGA自动化环境(Linux下vivado Tcl脚本自动化开发),业余IC设计流程与通路

    1.简述 一个完整的IC EDA环境也不能缺少了FPGA,FPGA原型验证是IC设计流程中重要的一环.一个芯片从设计到流片需要投入大量的人力.财力以及很长的研发周期,如果流片失败,对于公司来说是一笔很 ...

  7. eda多功能数字钟课程设计_《多功能数字钟》EDA实验报告

    <EDA课程设计> 1.摘要 实验报告 多功能数字钟 姓 名: 学 号: 联系方式: 成 绩: 在当代,随着人类社会进入到高度发达的信息化社会.信息技术的发展起着越来越大的作用,它几乎涉及 ...

  8. 立创eda专业版学习笔记(5)(设计流程)

    看官方的教学视频看到的,写得不错,我截屏保存一下 下面是官方使用教程文档里的设计流程: 立创eda专业版的简单的设计流程如下: 1.如果没有需要的库,则先画库:器件,符号,封装.器件需要绑定符号和封装 ...

  9. IC设计流程之工具篇——EDA软件

    1947年Bell Lab制造出第一款晶体管,1958年德州仪器的Jack Kilby用2个晶体管构造了世界上第一款集成电路,这是集成电路IC的雏形与开端.2003年英特尔公司生产的Pentium4处 ...

  10. EDA实验(Quartus Ⅱ+fpga) (二)---时序电路的设计-模可变计数器设计

    前言: 本文主要介绍了EDA原理与应用这门课程的相关实验及代码.使用的软件是Quartus Ⅱ,该实验使用fpga芯片为cycloneⅤ 5CSEMA5F31C6. (一)实验目的 (1)进一步熟悉E ...

最新文章

  1. class function或class procedure是什么意思
  2. GitLab CI/CD
  3. .NET如何写正确的“抽奖”——数组乱序算法
  4. 一个select元素自定义设计的新思路:appearance: none之后利用符号制造小箭头
  5. 好看的导航网站源码-简约自适应网站网址导航系统
  6. setTimeout() 与 setInterval() 异同
  7. jquery ui accordion的详细参数
  8. 在php中使用守护进程
  9. 腾讯云IM-SDK集成(web端)完成IM登录
  10. mac上如何提取图片上的文字?几款不错的OCR文字识别工具推荐
  11. 2014腾讯实习生招聘数组墙算法
  12. HBase的java代码开发(完整源码)
  13. 北京天宇联科技有限责任公司-T语言中html页面keys键值的设置
  14. 2019春招CVTE面试(1)
  15. python workflow_如何用 Python 写 Alfred Workflow
  16. 学习笔记:IDF 移动端UX设计 1.11 课程回顾
  17. 为什么要使用回调函数?(这个回答太精彩了)
  18. 极客公园创新大会十周年首日看点:前沿思考论坛
  19. 2022年第十三届蓝桥杯 python B组 第B题 寻找整数
  20. 乳杆菌属Lactobacillus——维持肠道和阴道健康不可忽缺的角色

热门文章

  1. spring gateway route超时时间原理解析和gateway调用流程
  2. 树莓派外设开发——IIC接口OLED屏幕
  3. iOS Game Center 登陆验证实现
  4. SequoiaDB 巨杉数据库-隔离级别
  5. Flex ANE制作打包流程
  6. IceSword V1.22 Final 冰刃
  7. Linux Canbus调试笔记
  8. 京东背调一星期,范围广到可怕。网友:这特么比入党还难?
  9. 血手耳机与笔记本驱动冲突
  10. 支付宝当面付网站对接支付教程