0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

龙芯2k1000的中断处理逻辑

嵌入式IoT 来源:嵌入式IoT 作者:嵌入式IoT 2021-01-07 10:41 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

龙芯2k1000的中断设计

1.前言

2.龙芯2k1000的中断描述

2.1 mips设计上的通用中断处理

2.2 龙芯中断的设计

3.龙芯2k1000中断的产生与处理

4.龙芯2k1000中断处理概述

1.前言

中断与异常在任何体系架构的芯片上都不会完全一样。在arm的m系列芯片上需要理解NVIC,这个相对较为容易,而对于高端一些的芯片,中断的处理就会复杂许多。比如arm上的gic(Generic Interrupt Controller)。要使用好GIC则需要专门去读这个外设的手册,然后写中断控制。对于MIPS中断控制的处理流程,就是本文描述的重点。

2.龙芯2k1000的中断描述

龙芯2k1000最多支持64个中断的触发源,按照统一方式进行管理。

1cdd4ae6-5074-11eb-8b86-12bb97331649.png

这64个中断控制器通过可以配置的中断路由可以分配到CPU0与CPU1中。

在这64个中断中又需要按照需要路由到4个队列上。

2.1 mips设计上的通用中断处理

在MIPS的中断设计上,MIPS CPU会设计8个独立中断位。

1d30c07c-5074-11eb-8b86-12bb97331649.png

其中,6个外部中断(IP2 ~ IP7),2个软中断(IP0~IP1)。片上的计数器/定时器会连接到一个硬件中断位上去。

2.2 龙芯中断的设计

对于对于每个核上的IP0~IP3,其对应的是 CP0_Status 的 IP2 到 IP5。IP7用于定时器中断。

1d68b180-5074-11eb-8b86-12bb97331649.png

在中断设计这一块,这64个中断又可以分为低32位与高32位,对于低32位可以将每个中断路由到CPU0,Mailbox0,也就是对应IP2。对于高32位,可以将每个中断路由到CPU0,Mailbox0,也就是对应IP3。

1d99b528-5074-11eb-8b86-12bb97331649.png

根据上述的寄存器配置每个中断的路由即可。

3.龙芯2k1000中断的产生与处理

rt-thread上,将异常处理向量表通过链接脚本放到代码段的头部。

1dc9b732-5074-11eb-8b86-12bb97331649.png

然后通过写中断向量表地址到向量基地址寄存器中。

1df38ddc-5074-11eb-8b86-12bb97331649.png

如果有中断发生,则可以跳转到中断向量表去执行相关的中断处理程序。

MIPS上的中断处理可以读取c0 cause寄存器,得到mips发生中断或者异常的原因。

因为此时MIPS还只有7个中断信息,需要再次读取龙芯中断控制器的中断,才能准确的得到中断产生的原因。

1e1f4a44-5074-11eb-8b86-12bb97331649.png

最后可以通过rt-thread的中断处理的回调函数处理具体的中断信息。

4.龙芯2k1000中断处理概述

龙芯2k1000利用mips上的8个中断位,自己添加了一个中断控制器,该中断控制器可以配置中断的路由方式,比如让其路由到CPU0或者CPU1上,并且可以指定每个中断路由到具体的mailbox上。

根据mailbox的设计,当中断发生时首先通过mips上的c0 casue大致确定其中断的原因,接着通过龙芯2k1000的中断控制器,读取状态从而分析得到具体的外设中断。

上述则是龙芯2k1000中断处理逻辑。

责任编辑:xj

原文标题:龙芯2k1000的中断设计

文章出处:【微信公众号:嵌入式IoT】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    463

    文章

    54432

    浏览量

    469393
  • 龙芯
    +关注

    关注

    3

    文章

    446

    浏览量

    32943
  • 中断
    +关注

    关注

    5

    文章

    920

    浏览量

    43875
  • 2K1000
    +关注

    关注

    0

    文章

    21

    浏览量

    867

原文标题:龙芯2k1000的中断设计

文章出处:【微信号:Embeded_IoT,微信公众号:嵌入式IoT】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    龙芯2K0300蜂鸟板试用】PicoClaw 部署与应用

    龙芯2K0300蜂鸟板试用】PicoClaw 部署与应用 本文介绍了龙芯2K300蜂鸟开发板实现 PicoClaw 板端部署和聊天交互的项目设计,包括环境搭建、模型配置、网页和应用对
    发表于 04-19 19:04

    2K3000八核龙芯主板加速工业智能化落地应用

    工业智能化转型的核心,在于筑牢自主可控的硬件基座。作为连接信息技术与先进制造的关键枢纽,工控主板的性能与可靠性,直接决定智能产线的运转效率与安全水平。广州高能计算机推出的2K3000八核龙芯主板GM-S301K,依托国产核心技术
    的头像 发表于 04-03 14:19 163次阅读
    <b class='flag-5'>2K</b>3000八核<b class='flag-5'>龙芯</b>主板加速工业智能化落地应用

    Banana Pi 基于龙芯2K3000的国产信创工业计算网关设计,采用无风扇设计

    Banana Pi BPI-2K3000工业计算机开发平台,基于龙芯最新一代2K3000(3B6000M)处理器研发的高性能嵌入式工业计算机,以满足不同客户对高性能信创嵌入式计算机的多
    发表于 12-17 11:06

    集特龙芯2K3000主板适配麒麟系统:国产化工业控制的可靠之选

    集特龙芯2K3000主板采用LoongArch架构双核处理器,主频1.5GHz,通过深度优化与麒麟操作系统(Kylin V10 SP1)的兼容性,实现以下突破: · ‌ 全栈国产化 ‌:从芯片到
    的头像 发表于 12-05 15:49 616次阅读
    集特<b class='flag-5'>龙芯</b><b class='flag-5'>2K</b>3000主板适配麒麟系统:国产化工业控制的可靠之选

    国产化工控机突围战:众达科技龙芯2K3000如何啃下“硬骨头”?

    国产化工控机(主要产品:龙芯2K3000全国产工控机)
    的头像 发表于 10-10 16:48 1074次阅读

    龙芯2K3000国产主板:强大内核,多元功能

    在科技飞速发展的今天,核心技术自主可控已成为国家和企业发展的关键。高能计算机推出的龙芯2K3000国产主板GM-S301K,以其强大内核与多元功能,为各行业带来全新的解决方案,成为国产科技领域的耀眼明星。
    的头像 发表于 08-04 13:58 1144次阅读

    喜讯 | 眺望电子2K3000工控系列入选龙芯中科伙伴产品

    电子同时,眺望电子2K3000系列的核心板,工控板和工控机也成功入选龙芯2K3000芯片在工控应用领域的首款伙伴产品,为工控嵌入式市场用户提供最新的方案选择与应用落
    的头像 发表于 07-25 08:31 1238次阅读
    喜讯 | 眺望电子<b class='flag-5'>2K</b>3000工控系列入选<b class='flag-5'>龙芯</b>中科伙伴产品

    龙芯教育生态论坛圆满收官

    近日,龙芯机器人(采用龙芯2K0300处理器)与宇树机器人(采用龙芯2K3000
    的头像 发表于 07-02 18:09 1326次阅读

    精彩回顾 | 眺望电子亮相2025龙芯产品发布暨用户大会

    芯片与工控处理龙芯2K3000/3B6000M芯片,在各位领导与产业生态伙伴的共同见证下,龙芯在我国重点产业链自主可控迈出新的里程碑。在大会2K
    的头像 发表于 06-27 12:01 1727次阅读
    精彩回顾 | 眺望电子亮相2025<b class='flag-5'>龙芯</b>产品发布暨用户大会

    飞凌嵌入式受邀亮相「2025龙芯产品发布暨用户大会」

    6月26日,2025龙芯产品发布暨用户大会在北京隆重举行,飞凌嵌入式作为龙芯重要的生态合作伙伴受邀亮相,并带来了基于龙芯2K0300-i处理
    的头像 发表于 06-27 08:07 1554次阅读
    飞凌嵌入式受邀亮相「2025<b class='flag-5'>龙芯</b>产品发布暨用户大会」

    迅龙软件受邀参加2025龙芯产品发布暨用户大会,发布基于龙芯2K3000的OrangePi Nova

    2025年6月26日,2025龙芯产品发布暨用户大会在北京·中关村国际创新中心举行,龙芯合作伙伴、专家学者、权威媒体等齐聚大会,共同见证龙芯新产品及合作伙伴基于龙芯
    的头像 发表于 06-26 17:01 2071次阅读
    迅龙软件受邀参加2025<b class='flag-5'>龙芯</b>产品发布暨用户大会,发布基于<b class='flag-5'>龙芯</b><b class='flag-5'>2K</b>3000的OrangePi Nova

    龙芯2K3000 | 重塑工控嵌入式处理器性能边界

    【前言】当ARM架构长期主导工控嵌入式领域,一场新的自主核心硬件革命正蓄势待发!龙芯中科新一代高集成处理龙芯2K3000即将震撼登场——以100%自主LoongArch架构为基石,融
    的头像 发表于 06-19 08:32 2304次阅读
    <b class='flag-5'>龙芯</b><b class='flag-5'>2K</b>3000 | 重塑工控嵌入式<b class='flag-5'>处理</b>器性能边界

    龙芯2K0300蜂鸟板试用】固件更新与测试

    龙芯2K0300蜂鸟板试用】固件更新与测试 本文介绍了龙芯2K300蜂鸟开发板实现官方固件更新和固件测试的相关流程,包括 u-boot、rootfs、kernel 固件的安装,固件测
    发表于 06-06 04:52

    龙芯处理器支持WINDOWS吗?

    龙芯处理器目前不支持原生运行Windows操作系统,主要原因如下: 架构差异 龙芯架构:龙芯早期基于MIPS架构,后续转向自主研发的LoongArch指令集(与x86/ARM不兼容
    发表于 06-05 14:24

    飞凌嵌入式携手龙芯发布2K0300i核心板,全国产自主可控新选择

    飞凌嵌入式作为龙芯合作伙伴,隆重推出FET-2K0300i-S全国产自主可控工业级核心板!FET-2K0300i-S核心板基于龙芯2K030
    的头像 发表于 05-07 11:31 1166次阅读
    飞凌嵌入式携手<b class='flag-5'>龙芯</b>发布<b class='flag-5'>2K</b>0300i核心板,全国产自主可控新选择