发新话题
打印

[讨论] EDK中virtex pro的PowerPC疑问。

[讨论] EDK中virtex pro的PowerPC疑问。

关于这个xilinx的硬核,软核我用了几次,今天忽然想到一个问题。
1. 如果用virtex pro生成了一个PowerPC的硬核,应该相当于在系统里面有了一个CPU,我们可以用C来实现一个比较大的工程或者协议代码。然后由CPU来顺序运行这些代码。
那么,这个代码放在哪里?是放在Xilinx的FPGA芯片里的RAM,还是需要像其他的那些CPU一样外扩一些flash rom?还是放到xilinx的上电加载用的flash ROM(比如xc18V04)?。
2. 如果放到xc18v04里面,那么只一个PowerPC就占用了50%多资源了,FPGA是否还有足够的资源来放我的那些用C写的工程?
3. 另外,我的那些用C来写的功能在FPGA中是什么形式的?应该不是转化为gate,switch,rtl吧?既然是PowerPC,那些代码应该以代码的形式存在,那些代码到底放在了哪里?
希望大家多多指教.谢谢

TOP

[讨论] EDK中virtex pro的PowerPC疑问。

1. 取决于你代码大小,如果不大,建议放在内部BRAM,否则放在外部,并加入接口管理模块
2.virtex pro 的硬核是内嵌的
3.代码在BRAM储存
另外,从电子学的角度,数字电路所有的东西都是以GATE形式存在的。(当然,还可以进一步细化下去)。没有什么"代码应该以代码的形式存在"。如果你愿意,完全可以用堆Slice去当存储器。

TOP

[讨论] EDK中virtex pro的PowerPC疑问。

我明白了,也就是说:在xps里面用c开发的一切东西,都是以代码的方式存储在内部或者外部的ram里;而不是按照代码的逻辑生成逻辑电路!
对吧!这样的话,一般的代码有几十k就可以跑起来了。

TOP

[讨论] EDK中virtex pro的PowerPC疑问。

right

TOP

[讨论] EDK中virtex pro的PowerPC疑问。

代码怎么会放在bram储存,掉电就没有了。
c的代码和rtl的代码通过xps转化为bit文件,放在配置flash里面。

TOP

[讨论] EDK中virtex pro的PowerPC疑问。

ppc405是直接做在V2p内部的硬核,只要在xps种调用即可,使用C语言编写的代码在编译程二进制文件后,经过xilinx的工具转换,与hdl代码得到的比特流文件最终合成在一起,根据这个合并后的比特流文件生成mcs(烧入pROM的一种最常用的文件格式)文件,只要把这个mcs文件烧入prom即可。系统加电后配置fpga后,编译的软件代码被放到bram中,确切的说是你为ppc系统配置的内存中。一个prom不够,可以多加几个就是,也可以使用外部的prom或eprom,只是需要有引导代码能够把这段代码读到存储器中运行才行

TOP

[讨论] EDK中virtex pro的PowerPC疑问。

代码放在内部是指运行时。

TOP

[讨论] EDK中virtex pro的PowerPC疑问。

    microblaze对串口中断操作的支持不是很好,我用一个全局数据来作为数据接收区域,用串口中断来接收数据,中断处理程序只有几行代码:判断串口非空,取数据,记数器加一(uchar型的),计数器整除以数组定义长度。
    我用的是19200的波特率,上位机每秒发送不到70个字符,然后我在主程序中检测数组中有没有'-',如果有,拷贝数组到另一区域(如果在主函数对此数据操作,要用一指针指向,否则数据处理跟不上,我不知道具体原因?),对另一区域的数据操作,然后发回操作后得到的数据,但是经常会处理几组发送回一次。

TOP

[讨论] EDK中virtex pro的PowerPC疑问。

如果程序太大,一个prom不够,怎么来引导呢?能讲得详细一点吗?

TOP

用flash嘛哈哈

TOP

谁说说怎么写引导代码哈,小弟也不会?

TOP

dingding

TOP

看了上面的讨论
很有帮助

TOP

这些C程序放在FPGA内部的BRAM中后,这些BRAM是不是就当ROM使了。
向往猪一样的生活。

TOP

我在用EDK建工程的时候发现默认是不选BRAM的,那程序是在哪里执行?

TOP

接着讨论啊,很受用。
我也是不晓得怎么写程序来使用PPC405,有哪位可以指点一下吗?

TOP

发新话题