(四)总线与地址

本专栏总结王利涛《C语言嵌入式Linux高级编程》第二期课程

(一)内存空间与I/O空间

(四)总线与地址

(二)地址的本质

  • CPU引脚的一组地址控制信号,被称为物理地址,通过CPU管脚发出;
  • 有MMU的CPU会把程序使用的虚拟地址转换为物理地址;
  • 地址线位数决定寻址空间。

(三)总线的概念

(四)总线与地址

  • 总线是各种数字信号的集合。
  • 总线信号的组成
    • 地址信号
    • 数据输入、输出信号
    • 控制信号
    • 可给总线上的设备供电源
  • 总线的特点
    • 可升级。当地址信号位宽、频率超出总线能力,可以升级总线。
    • 作为一种工业标准,促进计算机行业生态的发展。

(四)总线编址

  • 编址方式

    • 统一编址:内存和外设共享CPU寻址空间,如ARM、MIPS。
    • 独立编址:I/O外设不占用CPU寻址空间,独立编址,使用独立命令访问。如X86下的 IN/OUT指令,独有64K的I/O地址空间。此时还需要依靠多跟控制信号线来控制总线上的地址属于I/O端口,还是存储器的。
  • 在Linux下,/proc/ioport 可查看外设地址;/proc/iomem 可查看存储器地址。