首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Qsys中一个外围设备中的多个中断发送器

Qsys中一个外围设备中的多个中断发送器
EN

Stack Overflow用户
提问于 2015-10-07 11:47:37
回答 1查看 1.1K关注 0票数 0

使用Qsys (Quartus II x64 15.0.1Build 150),我制作了一个Nios2 2/e和几个标准外围组件的系统。我还添加了我的自定义组件与一个MM-从和两个中断发送者。在创建_hw.tcl文件期间,我在组件编辑器中将每个从服务器设置为“关联可寻址接口”。

Qsys没有报告任何错误或警告,但随后我尝试使用New2000Nios2BSP项目向导在Eclipse中创建BSP项目。我选择“”,但是" CPU“ComboBox仍然是空的,出现了错误:”没有找到Nios“。

然后,我从主菜单启动BSP编辑器: Nios 2\ BSP编辑器和按下2 BSP。我再次提供了SOPC文件,这个工具找到了CPU,但也报告了错误:“最多只能有一个IRQ与模块"my_component”的以下从站相关联:mm_slave。“

然后我返回到Qsys,删除一个中断发送器,这次一切正常,但我需要生成多个中断。

那么,如果您有Nios2/e连接到自定义外围设备1 MM-从和几个中断发送者怎么办?

我有一些想法,但不喜欢它们:

  1. 为每个irq添加MM-从(看起来像是浪费资源)。
  2. 不要在组件编辑器中指定“关联可寻址接口”(顺便说一句,它可以工作,但我不知道它是否一直都能正常工作)。这个选项到底是做什么的?我不太准确地说它会起作用,对不起。实际上,可以生成qsys和BSP,但在BSP的系统中,work号将定义为-1,因此不能工作。
  3. 将所有中断合并为一条线路(它们都将共享相同的优先级)。
  4. 将中断发件人配置为宽度大于1的irq信号(组件编辑器允许这样做,但报告警告:"interrupt_sender: irq类型的信号irq_many4必须有宽度1“)。与案例2一样,我不知道Altera的生成器/编译器会发生什么。组件编辑器阶段完成后,Qsys不接受这样的系统。

请帮帮忙。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-09 11:24:51

最后,我发现以下几点:

如果你需要多个IRQ发送者在一个自定义Qsys模块,你需要一个MM-奴隶每个。从GUI组织来看,您似乎将MM-从服务器分配给IRQ,但是(据我所知)它的工作原理正好相反: IRQ与MM-从服务器绑定,并且它可能有最大的IRQ。我并没有真正尝试运行它,但是BSP文件看起来是正确的,所有的东西至少都会编译。我希望有(或将来)有更好的方法来实现这一点。

如果您可以在所有中断之间共享相同的优先级,那么只使用一个中断发件人就可以避免这个问题,因此只能使用一个MM-从服务器。它在开发板上工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32991396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档