跟李凡老师学FPGA图像加速器之D04:原教材加速器代码欣赏(20170428课堂笔记)
跟李凡老师学FPGA图像加速器之D04:原教材加速器代码欣赏(20170428课堂笔记)用笨笔头整理课堂笔记,用以备忘,温故而知新。
整理文稿的细节处未能一一体现李凡老师讲课精髓和独特风采,有待下一步补充完善。
感谢李凡老师博大精深的学识、孜孜不倦的教诲,并敬请李凡老师原谅本人拙劣的课堂笔记。
近期精彩课程安排如下图。
实际执行可能会有所调整,谨供参考。 本帖最后由 lcytms 于 2017-4-28 22:10 编辑
0902
指导设计。
查看上次课板书。
查看更新日志。
查看加速器状态转移图。
我们在这都看一下。
S2的时候发ass。
S4的时候得到第一个字节。
0903
指导设计。
然后顺序转过来,到S10的时候,发ast。
得到55:48。
S12的时候,得到t64的第一个字节。
然后到S20的时候,op=1的时候,做加法,op=0做减法。
S21,ast,到7:0。小端对齐,低地址,低数据。
然后把write打开。
S22,然后一直到S29,把写关了,acc退出资源,acc的中断发出,清除。
到S30的时候,把中断关了,因为中断用沿触发,清除也用沿触发。
0904
指导设计。
然后我们来看一下你的代码。
自上而下,先看一下顶层。
dmux、amux、wmux,这个就跟设计一致了。
没问题。
再来看。
有CPU,有ACC,有仲裁器,有smux,有acc_sel。
我们就做成显模,没问题。
有DMUX,AMUX。
本帖最后由 lcytms 于 2017-4-28 23:40 编辑
0905
指导设计。
然后怎么看你的头文件。
对,这个是我们分配的。
ASSH是8000,ASSL是8001。
8002,8003,8004,没问题。
然后看SH,你最好做一个说明。
验证的时候,并不是真实的,真实的时候完全取决于CPU嘛。
0906
指导设计。
加注释。
验证时源数据首地址0100H。
验证时目标数据首地址0110H。
因为源数据有8个,有8个地址。
不需要全部8个地址,只要首地址就行了。
0100,没错。
DMUX三个,AMUX两个,WMUX两个。
MEM的范围是MASK、BASE。
然后呢,ACC的范围是MASK、BASE。
然后呢,44行的加和减呢,是操作码,最好加上OP_。
0907
指导设计。
你可能要到acc里面加上这个。
Ctrl+S、Ctrl+K。
做得很好。
0908
指导设计。
看一下你的acc。
4:0的state。
64位的s64。
15:0的ass、ast。
你的状态寄存器呢?
sreg呢?
这样,你先退出去,做个备份再进来。
0909
指导设计。
改文件夹名,加上V21。
做备份后,打开原文件夹。
先进doc,打开文档,更新日志。
0910
指导设计。
先进doc,打开文档。
更新日志。