CME-M5系列(四)——SoC之Blink
来源:互联网 发布:淘宝假酒处罚规定 编辑:程序博客网 时间:2024/04/30 01:23
本篇按照CME-M5系列(二)——快速入门的流程搭建一个基本的工程,其中只保留必须的步骤。
步骤一:运行Primace
1)运行Primace
步骤二:创建工程
2)打开New Project Wizard
点击 Project – New Project, 打开工程创建对话框, 并进行如下设置:
Project Directory 为存储路径,本例设置为E:\2016\CME\prj\Blink
Project Name 为 Blink
Top Module Name 为 Blink
3)选择器件
完成上述设置后,点击 Next,进入如下界面, 选择 CME-M5C06N3T100C7 作为当前器件,其他设置如图。 完后点击Finish 进入主页面
步骤三:设计
4)例化8051
a) 在 Primace 主界面点击 Tools – Wizard Manager启动 IP 向导
b)选择Create a new design点击Next进入如下界面
c)在右侧的IP Cores列表里选择8051MCU点击Next进入如下界面
d)Module name任意修改(本例为mcu_lz),language选择verilog(也可以VHDL),其余默认,点击Next进入如下界面
e)双击左侧List使能各个接口,至如下界面
f)以后各步设置可以默认,点击Finish
5)例化pll
a)、b)同上
c)在右侧的IP Cores列表里选择Phase-Locked Loop点击Next进入如下界面
d)Module name任意修改(本例为pll_lz),language选择verilog(也可以VHDL),其余默认,点击Next进入如下界面
e)clkin输入12,去掉‘Use locked port’选择,其余默认,点击Next进入如下界面
f)clkout0输入100,点击Finish
6)例化OSC
a)、b)同上
c)在右侧的IP Cores列表里选择Oscillator点击Next进入如下界面
d)Module name任意修改(本例为oscillator_lz),language选择verilog(也可以VHDL),其余默认,点击Next进入如下界面
e)无源晶振选择OSCILLATOR,有源晶振原则CRYSTAL,点击Finish
7)创建顶层文件
a)在Project项目管理器下右键选择Add New File,如图
b)选择保存路径E:\2016\CME\prj\Blink\Blink\src,文件名Blink.v(推荐保持与Project Name 及Top Module Nam一致),点击保存
c)新创建文件如图
d)修改Blink.v,修改后的文件,源码在CSDN中可以下载,Blink.v中含有其他功能,在接下来的博文中会慢慢讲解
e)在Project项目管理器中,点击Blink.v前面+号,在M Blink上右键选择Set As Top Module,设置之后Blink变为Top Module,并以红色显示
至此工程搭建完毕,接下来进行综合、布局布线、管脚分配等工作
步骤四:综合、管脚分配、布局布线、生成比特流
8)综合
a)在 Primace 主界面点击 Flow– Run Synthesis完成综合
9)管脚分配
a)在 Primace 主界面点击 Tools– IO Editor进行管脚分配,管脚分配需要配合开发板进行,之后的博文单独介绍
10)布局布线、生成比特流
a)在 Primace 主界面依次点击 Flow– Run Placement、Run Routing
b)设置文件输出类型,在 Primace 主界面点击 Tools– Options打开配置对话框,在Physical Flow选项中将Output Formats全部选中
c)在 Primace 主界面点击 Flow–Run Bitgen完成文件输出
注意!可以直接运行Bitgen,一步完成上边的所有操作
步骤四:烧写
连接好下载器,运行Tools-DownLoader完成烧写。
该方法在开发过程中很少使用,建议使用FSA和51patch进行烧写,具体操作在软件开发部分详述。
- CME-M5系列(四)——SoC之Blink
- CME-M5系列(一)——简介
- CME-M5系列(二)——快速入门
- CME-M5系列(三)——Primace下载安装
- CME/CUE系列之一:CME GUI安装
- Arduino可穿戴教程之第一个程序——Blink(一)
- SoC嵌入式软件架构设计之四:内存空间规划分配
- TinyOS之Blink(一) - 底层I/O指定分析
- TinyOS之Blink(二) - Platform初始化分析
- Zedboard学习(四):PS+PL搭建SoC最小系统
- Arduino开发之Blink LED
- 《解剖PetShop》系列之四——ASP.NET缓存
- 债券研究系列之四——可转换公司债券
- STL学习系列之四——deque序列容器
- Spring系列之四——Spring IOC依赖注入
- DB2开发系列之四——触发器
- Maven提高篇系列之四——使用Profile
- C语言笔记系列之四——输入输出控制
- 【C#设计模式-中介者模式】
- 问题解决:在R.java文件下面找不到自定义的ID(R.id.xxx找不到)
- POJ 2112 —— Optimal Milking 二分+Floyd+最大流
- 【c语言】统计一个字符在字符串中出现的次数
- Android AdapterView View的复用机制 分析
- CME-M5系列(四)——SoC之Blink
- tornado系列五:cookie安全
- iOS中跑马灯效果小结
- android 多媒体和相机详解十
- Sogli长短短的Xssjs-20160506备份手册
- Fresco清理缓存
- Fragment
- 第四届河南省acm省赛 走迷宫(二分法枚举差值和最大值最小值+DFS)
- Java集合-HashMap