• 什么是中断原理?

    首先引出中断产生的原因,对于CPU而言,假如没有中断的概念,CPU会根据指令在内存中的存放顺序,依次取指,解码,执行;通常情况下PC的值一般指向下一条需要处理的指令地址。 当程序顺序执行时,PC每次根据指令字节数增加相应的值。以32位指令解码为例,每执行一条非跳转指令的情况下一般是增加4字节。执行过程中,若遇到跳转/返回指令,则跳转/返回到对应的PC地址执行。

    2023-05-15 digiproto

  • TriCore处理器的上下文切换原理

    我们通常说的上下文又叫CPU上下文,是CPU运行任何任务前,必须依赖的环境,包括CPU 寄存器和程序计数器。上下文切换:就是先把前一个任务的 CPU 上下文(也就是 CPU 寄存器和程序计数器)保存起来,然后加载新任务的上下文到这些寄存器和程序计数器,最后再跳转到程序计数器所指的新位置,运行新任务。

    2023-05-15 digiproto

  • 一文读懂多架构的中断控制器

    描述了x86/ ARM/PowerPC三种主流中断控制器的特点和发展历程,方便读者初步而较为全面地学习不同架构中断控制器之间的区别,掌握中断控制器的概念。

    2023-05-15 digiproto

  • PowerPC E500 MMU详解

    1. 什么是MMU?MMU是Memory Management Unit的缩写,中文名称为内存管理单元。MMU是负责处理器(CPU)的内存访问请求的计算机硬件,其功能包括虚拟地址到物理地址的转换(即虚拟内存管理)、内存保护、缓存cache的控制等。MMU是一个与软件密切相关的硬件部件,也是运行linux等依赖MMU内存管理单元操作系统内核机制的最大部件之一。如果处理器没有MMU,CPU内部执行单元

    2023-05-15 digiproto

  • 走进C/C++函数的名字改编

    现在的编程语言中,不同的变量或函数可以用相同的标识符命名,只要它们占据不同的命名空间(通常由模块、类或作用域定义)或有不同的签名(如在函数重载中)时,就可能会出现标识符重名的情况。另外,根据编译器和平台的不同,函数的调用方式在编译为机器代码后也可能使用不同的、专门的调用约定。

    2023-05-15 digiproto

  • 关于嵌入式可执行程序,你了解多少?

    嵌入式系统由硬件系统和软件系统组成,因此为了使整个嵌入式系统运行起来,必须有相应的程序,我们一般所说的程序,实际上就是存储在硬件设备中的一些可执行代码。可执行代码包括嵌入式操作系统和应用软件。

    2023-05-15 digiproto

  • C语言函数在硬件中的执行原理

    众所周知,C语言的应用程序总是以「main」函数作为程序入口地址,那到底什么是函数呢? 程序的执行其实本质上是CPU对指令的处理,那么一个C函数的本质其实也相当于一组协同工作的指令,而这组指令能够通过相互之间的配合实现特定的功能(Function)。例如从SPI缓冲区中提取数据,配置定时器的延时时间,或者从内存读取数据并写入DAC的寄存器中。 一个函数能完成的功能往往不止一个,比如某个函数能够实现通过串口传输一个字节的数据,然后检查状态位直到接收到一个字节,最后把接收到的所有数据组合起来做实际的计算。

    2023-05-15 digiproto

  • Linux进程间通信

    Linux环境下,进程地址空间相互独立,每个进程各自有不同的用户地址空间。任何一个进程的全局变量在另一个进程中都看不到,所以进程和进程之间不能相互访问,要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1把数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走,内核提供的这种机制称为进程间通信(IPC,Inter-Process Communication)。

    2023-05-15 digiproto

首页
产品
新闻
联系