我做了一些研究,但找不到太多信息.
我想知道ARM嵌入式处理器有多少L1读取和L1写入端口以及端口有多宽.具体来说,我对Cortex-A8,Cortex-A9和Cortext-A15感兴趣.
我的盲目猜测是Cortex-A9处理器有一个L1读端口和一个L1写端口,宽64位.我的另一个猜测是它有一个共享的读/写端口.有什么想法吗?
我需要与基于 AXI-burst 接口的 FPGA 设备进行通信。在不涉及 DMA 的情况下,通过 Linux 访问此类设备的方法有哪些?突发是 AXI 标准的固有属性,通常应在传输大量数据时自动触发。更大的问题是 FPGA 被设计为仅响应 AXI 总线上的突发类型请求。因此,当应用程序尝试顺序复制时,这会导致 Linux 上出现严重问题。我已经尝试过了memcpy
,但它不起作用。
我首先要说的是,我不是该领域的专家,我的问题可能包含误解,在这种情况下,如果你纠正我并附上资源,我会很高兴,所以我可以了解更多细节.
我试图弄清楚系统总线的方式以及移动设备中出现的各种设备(如传感器芯片,wifi/BT SoC,触摸屏等)是如何被CPU(以及其他设备)处理的微控制器).
在PC世界中,我们有总线仲裁器将命令/数据路由到设备,并且,afaik,地址在板上硬连线(如果我错了,请纠正我).但是,在移动世界中,我没有找到任何类型寻址的证据; 我确实发现ARM已经标准化了高级微控制器总线架构,但我不知道,该标准是否适用于位于同一SoC(即Exynos,OMAP,Snapdragon等)内的组件(cpu-cores).或者也影响外围接口.具体来说,我问的是哪个组件负责为外围设备和MMIO地址分配地址?
一个更基本的问题是,在移动设备架构中是否存在总线管理,或者是否存在某种"星形"拓扑(以CPU为中心).
从这个问题我得到的印象是这些设备被视为平台设备,即直接连接到CPU而不是通过总线连接的设备.不过,我的问题是操作系统如何知道如何解决它们?然后其他线程,这个和这个有关平台的设备/驱动程序让我糊涂..
我想知道在AXI4Lite总线上进行简单访问的最小时钟周期是多少.
我认为这是4,但我不确定.