gpt4 book ai didi

stm32 - STM32的外设寄存器在哪里?它们是在 cortex-m 内核中还是在外围单元中?

转载 作者:行者123 更新时间:2023-12-02 00:04:44 26 4
gpt4 key购买 nike

我有两个问题。 memory region of the cortex-m core cpu1- stm32 微 Controller 的内存是在 cortex-m 内核内部还是外部?如果它在 cortex-core 内部,为什么它没有显示在 cortex-m core 通用用户指南的框图中? block diagram of the cortex-m core

2-我试图理解 stm32 架构,但我遇到了歧义。 usart block diagram

正如您在图片中看到的,引用手册说 USART 单元有一些寄存器(即数据寄存器)。但是这些寄存器也存在于 cortex-m 内核的内存区域(如果第一个问题的答案是“内部”)。它们到底在哪里?每个寄存器有两个寄存器吗?还是它们位于 cortex-m 内核或外围设备本身?与内存映射i/o定义有关吗?

最佳答案

CPU 核心内部唯一的存储空间是寄存器(包括通用寄存器和专用寄存器)。其他一切都是外部的,包括 RAM 和 ROM。

外设控制寄存器本质上存在于外设内部。然而,CPU 访问它们的方式与访问 RAM 或 ROM 的方式相同;这就是内存映射的意义,它告诉你哪些地址指的是 RAM、ROM、外围寄存器和其他东西。 (请注意,大部分内存映射未使用 - 一个 32 位地址空间能够寻址 4GB 内存,而且我所知道的微 Controller 都没有这么大的存储空间。)适当的组件“响应”读取和写入根据地址在内存总线上请求。

基本概览 Wikipedia page在内存映射 IO 上相当不错。

请注意,这些都不是 Cortex-M 特有的。几乎所有现代微处理器设计都使用内存映射。另请注意,Cortex-M 的实际总线架构相当复杂,因此您从维基百科文章中获得的任何理解都将是对真实实现的抽象。

关于stm32 - STM32的外设寄存器在哪里?它们是在 cortex-m 内核中还是在外围单元中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60950695/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com