《7天搞定FPGA》—Robei与Xilinx实战

思想前言

集成电路设计软件目前在世界上只有几家公司在做,普遍分布在欧美等国家,中国的集成电路设计软件长期依赖于盗版和进口。“工欲善其事,必先利其器”,中国要想大力发展集成电路产业,首先要有自主知识产权的集成电路设计工具。
Robei是一款全新的拥有自主知识产权的集成电路设计工具,不仅具备传统的设计工具的代码编写、编译、仿真功能,更增加了可视化和模块化设计理念,具有模块设计透明化,方便模块重新利用,加快设计进度的特点
传统的集成电路设计工具庞大、复杂、难用、很不容易入门。初学者将会经历感兴趣 迷茫 头疼 失去兴趣 悟道 加深兴趣 痴迷的过程,其中很大一批人在中间过程中就放弃了继续学习。Robei可以让初学者平稳而快速的过渡到悟道阶段,并提出7天搞定FPGA的方案。Robei为初学者扫平了学习集成电路的荆棘,将泥泞的土路打造成了高铁,为更多人在集成电路学习的道路上保驾护航。
传统的书籍都是由专家撰写,他们的知识体系已成系统,很多内容让初学者摸不清头脑,本书采用了初学者教初学者的方式,案例大部分是由初学者在学习过程中设计出来,然后把自己的学习心得编写成案例。因为了解初学者心理的一定是初学者,而非专家学者。本书将会随着初学者的增多,案例的增多,变得更加精炼,更加贴合读者的发展。
由于编写时间仓促,编者水平有限,书中难免出现纰漏和错误,敬请批评指正。本书仅供读者学习参考使用。
在本书付梓之际,谨向为本书付出辛勤劳动的青岛若贝电子有限公司的工作人员致以诚挚的谢意!

简 介

软件:Robei可视化芯片设计软件
Robei是一款可视化的跨平台EDA设计工具,具有超级简化的设计流程,最新可视化的分层设计理念,透明开放的模型库以及非常友好的用户界面。Robei软件将芯片设计高度抽象化,并精简到三个基本元素,掌握这三个基本元素,就能很快地掌握Robei的使用技巧。该软件将先进的图形化与代码设计相融合,让框图与代码设计优势互补,弱势相互抵消。Robei软件是目前世界上最小的芯片设计仿真工具,也是唯一一个能在移动平台上设计仿真的EDA工具。它不依赖于任何芯片,在仿真后自动生成Verilog代码,可以与其它EDA工具无缝衔接。Robei以易用(Easy to use)和易重用(Easy to reuse)为基础,是一款为芯片设计工程师量身定做的专用工具。

目 录

第一章:认识工具,掌握基础

#1.1 为什么要选择Robei

1.1.1. 背景介绍
1.1.2. EDA的发展史
1.1.3. Robei的优势

1.2 安装与注册

1.2.1. 安装
1.2.2. 注册

1.3 如何使用Robei

1.3.1. 菜单和工具条
1.3.2. 工具箱
1.3.3. 属性栏
1.3.4. 工作空间
1.3.5. 输出

1.4 Robei三元素

1.4.1. 模块
1.4.2. 引脚
1.4.3. 连接线

1.5 Verilog基础

1.5.1. 数据
1.5.2. 运算符
1.5.3. 结构声明**

  1. 模块定义
  2. 引脚定义
  3. 连接线
  4. 例化
    1.5.4. 代码撰写
    1 赋值语句
    2分支语句
    3.循环语句
    4.初始化与重复执行
    5.阻塞式赋值与非阻塞式赋值
    **1.5.5. 一个模块的总结 **

1.6. 第一天的总结

第二章:实例入手,体验若贝

2.1 实例一 逻辑门设计

2.1.1. 本章导读

2.2.2. 设计流程
1. 模型设计
2. 测试文件设计
2.1.3. 问题与思考
2.1.4. 常见问题

2.2 实例二 计数器

2.2.1. 本章导读
2.2.2. 设计流程

  1. 模型设计 44
  2. 测试文件设计
    2.2.3. 问题与思考

2.3 实例三 编译码器

2.3.1. 本章导读
2.3.2. 设计流程

  1. 编码器模型设计
  2. 译码器模型设计
  3. 测试文件设计
    2.3.3. 问题与思考

2.4 实例四 ALU设计

2.4.1. 本章导读
2.4.2. 设计流程

  1. ALU模型设计
  2. 测试文件设计
  3. 16位ALU设计
  4. 32位ALU设计
    2.4.3. 问题与思考

第三章:动手实战,板上点灯

3.1 实例五 Robei和Vivado的联合设计——流水灯设计

3.1.1. 本章导读

3.1.2. Robei设计内容

  1. light模型设计
  2. light_tb测试文件的设计
  3. light_constrain约束文件的设计

3.1.3. Vivado设计内容

  1. 工程创建
  2. 使用Vivado综合工具来综合设计并且分析项目主要输出
  3. 使用Vivado实现设计的分析以及项目摘要输出
  4. 将设计在开发板上实现

3.1.4. 总结

3.2 实例六 自动售饮料机

3.2.1. 本章导读

3.2.2. 设计流程

  1. sell模块的设计
  2. sell_test测试文件设计
  3. sell_constrain约束文件设计

3.2.3. 板级验证

  1. VIVADO设计平台进行后端设计
  2. 开发板验证

3.2.4. 问题与思考

第四章:复杂运算,板级体验

4.1 实例七 8位移位寄存器的设计

4.1.1. 本章导读
4.1.2. 设计流程

  1. shift模型设计
  2. shift_test测试文件设计
  3. shift_constrain测试文件的设计
    4.1.3. 板级验证
  4. VIVADO设计平台进行后端设计
  5. 开发板验证
    4.1.4. 问题与思考

4.2 实例八 带符号位小数的加法设计

4.2.1. 本章导读
4.2.2. 设计流程

  1. qadd模型设计
  2. qadd_test测试文件的设计
  3. 约束模块和约束文件设计
    4.2.3. 板级验证
  4. VIVADO设计平台进行后端设计
  5. 开发板验证
    4.2.4. 问题与思考
    4.3 实例九 除法器设计
    4.3.1. 本章导读
    4.3.2. 设计流程
  6. divider模型设计
  7. divider_test测试文件的设计
  8. divider_constrain约束文件的设计
    4.3.3. 板级验证
  9. VIVADO设计平台进行后端设计
  10. 开发板验证
    4.3.4. 问题与思考

第五章:认识协议,操作接口

5.1 实例十 FIFO
5.1.1. 本章导读
5.1.2. 设计流程

  1. 模型设计
  2. 测试模块设计
  3. 约束模块设计
    5.1.3. 板级验证
  4. VIVADO设计平台进行后端设计
  5. 开发板验证
    5.1.4. 问题与思考
    5.2 实例十一 SPI总线接口的verilog的实现
    5.2.1. 本章导读
    5.2.2. 设计流程
  6. spi_master模型设计
  7. spi_master_tb测试文件的设计
    5.2.3. SPI接口协议的板级验证
    5.2.4. 问题与思考

第六章:串口通信,系统设计

6.1 实例十二 UART的发送与接收模块设计
6.1.1. 本章导读
6.1.2. 设计流程

  1. 接收模块的设计
  2. UARTTEST测试文件的设计
  3. 发送模块设计
  4. UARTsendtest测试文件的设计
    6.1.3. 问题与思考
    6.2 实例十三 Natalius 8位RISC处理器
    6.2.1. 本章导读
    6.2.2. 设计流程
  5. ALU模型设计
  6. stack模型设计
  7. data_supply模型设计
  8. zc_control模型设计
  9. data path模型设计
  10. instruction memory 模型设计
  11. control unit模型设计
  12. Natalius processor模型设计
  13. processor_test 测试文件的设计
    6.2.3. 问题与挑战

第七章:总结反思,项目挑战

参考文献
鸣 谢

《7天搞定FPGA》—Robei与Xilinx实战之前言介绍相关推荐

  1. 7天搞定FPGA精录总结Episode.6 串口通信,系统设计【基于Robei、Altera QuartusⅡ与Python】

    之前参加&组织学校排球比赛的时候,商量到我们可以学习那些正规排球大赛一样,决赛的时候在学校体育馆进行,而且我可以在一旁准备一点EDM热歌作为暖场音乐.然后就有同学用一脸奇怪的表情问我:&quo ...

  2. 干货,搞定 Istio + SkyWalking + Spring Boot 实战环境

    微服务架构被企业级开发广泛采用,而随着业务迅速发展,服务数量也呈现爆炸式的增长.日常开发过程中一套测试环境可能包含成千上百个服务.在协作过程中等待环境.抢占环境.验证冲突已成为常态.而长期发展导致的技 ...

  3. 随机森林c++_100天搞定机器学习|Day3334 随机森林

    点击上方"机器学习与统计学",选择"置顶"公众号 重磅干货,第一时间送达 前情回顾 机器学习100天|Day1数据预处理 100天搞定机器学习|Day2简单线性 ...

  4. 两小时搞定负载均衡51CTO技术沙龙现场视频2

    田逸田老师幽默风趣的案例讲解 7月5日下午,51CTO技术社区主办的"两小时搞定负载均衡 全真实战案例解析"活动圆满结束.参加沙龙的100多位用户和嘉宾相聚近三个小时,生动的课程. ...

  5. 如何用一套引擎搞定机器学习全流程?

    作者:陈戊超(仲卓) 深度学习技术在当代社会发挥的作用越来越大.目前深度学习被广泛应用于个性化推荐.商品搜索.人脸识别.机器翻译.自动驾驶等多个领域,此外还在向社会各个领域迅速渗透. 背景 当前,深度 ...

  6. Lazada(来赞达):就三个步骤!搞定Lazada店铺装修

    Lazada店铺的装修是承载着转化顾客的关键功效,每提升一个点的转换率,都能给店铺产生出乎意料的成效.就三个步骤!搞定Lazada店铺装修! 一:更新店铺介绍 1.在店铺装修工具页面,点击页面右上方的 ...

  7. 历经一个月,终于搞定了SVM(支持向量机)-附源代码解析

    历经一个月,终于搞定了SVM(支持向量机)-附源代码解析 前言 其实整体算下来,断断续续的也得有快两个月了(原谅博主比较笨).中间也有好几次放弃,不想写这篇总结了,但是之前立下的誓言,要将学习到的每一 ...

  8. 电脑dll文件缺失如何修复;DirectX修复工具,轻松搞定

    电脑dll文件缺失,是在使用电脑安装应用或游戏时经常会遇到的问题,但是如何修复电脑中缺失的dll文件,很多朋友并不是特别清楚. 分享一款功能强大且安全可靠的DirectX修复工具,轻松搞定电脑dll文 ...

  9. 一篇文章搞定《RecyclerView缓存复用机制》

    一篇文章搞定<RecyclerView缓存复用机制> 前言 零.为什么要缓存 一.RecyclerView如何构建我们的列表视图 二.缓存过程 三.缓存结构 1.mChangedScrap ...

最新文章

  1. NS2中802.11代码深入理解—packet传输的流程 (转帖)
  2. 自学使用sort他命令使用
  3. SSAS : 使用.NET为SSAS编写自定义程序集
  4. 数据结构和算法分析: 第五章 散列
  5. java tableview 双击_java-在TableView JavaFX的行上检测双击
  6. Debug docker: docker: Error response from daemon: could not select device driver ““ with capabilitie
  7. cmd后台运行exe_windows 十大实用“运行”命令
  8. [51CTO]给您介绍Windows10各大版本之间区别
  9. matlab 读取mp3文件,MATLAB音频文件读取
  10. 现代软件工程 习而学的软件工程教育
  11. excel----分组后统计
  12. 在安装Maven检查版本时出现Please set the JAVA_HOME variable in your environment to match the locat
  13. 2017中国大学生计算机设计大赛总结
  14. 再也不用熬夜爆肝做汇报了!PPT生成神器ChatBCG来啦!
  15. 天津海洋功能区划获批复 排海污水须100%达标-天津海洋功能区划-污水-达标率
  16. 2015我的校招季,阿里、搜狗、百度、蘑菇街面试总结
  17. Access to XMLHttpRequest at ‘file:///D:/xx/xxx.json‘ from origin ‘null‘ has been blocked by CORS问题解决
  18. python中import文件夹下面py文件,报错
  19. 两篇科普文章【开创文章】
  20. Addressable Asset System(进阶版AB)和AssetBundle(以下简称AB)制作的资源管理系统的对比

热门文章

  1. 解决chrome下载后一打开就是hao.123
  2. 机器学习法则:(谷歌)机器学习工程最佳实践(译)
  3. 【深度学习】QA机器人排序模型实现
  4. 计算机网络-TCP的运输连接管理(三次握手,四次挥手)补充一下为什么不能将四次挥手改为三次挥手
  5. 学计算机吃显卡吗,技术宅实测DNF到底吃不吃显卡
  6. Linux网络——数据链路层
  7. 寒假持续中...........在家的第115天
  8. MYSQL order by 将排序结果赋值到某个字段
  9. day5-常见的容器
  10. PPT文件安全打开口令解除