|
楼主 |
发表于 2009-4-28 19:18:22
|
显示全部楼层
课程大纲
入门:2天
第1天
1 FPGA背景介绍:
1.1 FPGA技术背景,行业现状及发展方向;
1.2 FPGA主要提供商及典型的应用领域;
1.3 FPGA基本原理,硬件架构及工艺特点;
2 嵌入式系统以及IP概念的简介;
2.1 嵌入式系统简介与SoC区别;
2.2 IP概念介绍、IP分类;
3 FPGA硬件平台介绍;
3.1 Spartan 3 芯片介绍;
3.2 Spartan3 板卡以及相应外设介绍;
4 Demo演示
4.1 VGA小游戏;
5 EDK工具介绍;
5.1 EDK是什么、EDK版本的情况;
5.2 讲解EDK的用途,其中包括EDK的几大功能;
5.3 讲解EDK在开发过程中所扮演的角色;
5.4 介绍EDK下的文件组织情况和各种文件的用途;
5.5 SDK介绍;
6 热身实验;
6.1 热身实验(Hello world!)
6.2 简单的人机交互(备用实验)
第2天
7 硬件描述语言介绍
8 ISE、Modelsim简介
8.1 EDA简介
8.2 ISE简介
8.3 Modelsim简介
9 FPGA软件开发流程
9.1 自顶向下的设计流程
9.2 FPGA的软件开发完整流程
9.3 FPGA在EDA工具上的设计流程
9.4 FPGA硬件开发流程
10 硬件流程中与FPGA密切相关的问题
10.1 FPGA配置方式的选取
10.2 FPGA型号的选取
10.3 FPGA外围器件介绍
10.4 FPGA的供电电源
10.5 FPGA的时钟和复位电路
11 FPGA开发中常见的错误
11.1 初学者软件常见问题
11.2 同步设计的重要性
11.3 软件不规范造成不必要的麻烦
12 硬件常见问题
12.1 电源和地纹波过大
12.2 晶振不能正常工作
12.3 外围电路信号电平格式不匹配
13 经验技巧
13.1 充分理解客户需求
13.2 设计规范
13.3 设计划分
13.4 设计输入
13.5 板级验证
初 级:5天
第3天
1 Verilog HDL语言:1天
1.1 Verilog HDL简介
1.2 Verilog HDL的基本语法
1.3 不同抽象级别的Verilog HDL模型
1.4 基本预算逻辑和它的Verilog HDL模型
1.5 组合逻辑和时序逻辑
1.6 状态机和可综合风格的Verilog HDL代码
第4天
2 Modelsim的使用:1天
2.1 如何建立一个modelsim工程
2.2 如何编写testbench文件
2.3 如何编译
2.4 如何进行仿真
第5天
3 ISE软件:
3.1 ISE概述
3.2 功能简介
3.3 设计输入
3.4 设计综合
3.5 设计仿真
3.6 设计实现
3.7 约束
3.8 下载编程
3.9 在线调试(Chipscope的使用)
第6天
4 EDK软件:
4.1 嵌入式系统介绍
4.2 EDK工具简介
4.3 MicroBlaze系统构架以及相关总线介绍
4.4 开源硬件以及wishbone总线介绍
4.5 基于MicroBlaze的软件开发套件SDK介绍
第7天
5 初级综合实验:
5.1 FPGA原理回顾
5.2 Verilog用法回顾
5.3 使用Verilog HDL语言完成一个较复杂系统;
5.4 使用ModelSim仿真通过,使用ISE综合通过;
5.5 挂载用户自定义IP
5.6 软件控制实现软件/硬件交互;
实验大纲
第1天
1. VGA Demo演示
2. 最小系统搭建(使用BSB新建一个基本系统)
第2天
3. 串口演示实验
4. 7段数码管显示试验(ISE的使用流程,时序逻辑和组合逻辑的编写)
第3天
5. D触发器实验(学习时序逻辑的写法,学习modelsim的基本用法)
6. 组合逻辑实验
7. 运算器实验(加法、减法、乘法编写,防止运算中数据溢出)
第4天
8. FIR算法实验(运用学习过的乘法加法运算实现FIR算法)
9. 序列检测试验(在随机序列中检测“011001”)
10. 串口仿真(学习串口的定义、功能、实现方法,理解接口功能的写法和操作)
第5天(ISE)
11. 模拟交通灯(训练状态机的实用与参数化设计)
12. 密码锁实验(fpga与慢速设备的接口速度匹配)
13. 串口通讯实验(练习fpga与串口通信)
第6天(EDK)
14. 添加自定义的PLB总线外设IP以及添加XILINX 库外设IP(实现GPIO外设)
15. wishbone总线外设IP(添加开源的GPIO IP core)
16. 中断控制实验(学会使用SDK进行软件开发与调试)
第7天
综合实验
 使用Verilog HDL语言完成一个较复杂系统;
 使用ModelSim仿真通过,使用ISE综合通过;
 挂载用户自定义的IP到PLB总线系统中;
 简单的软件控制实现软件/硬件的交互; |
|