问题标签 [dma]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
webserver - 使用 Raspberry Pi 本地服务器控制伺服系统
我们正在研究在 Pi 上运行服务器,并通过 webapp(通过本地网络)与它通信以控制 2-3 个伺服器。Rpi 似乎只有一个硬件配置的 PWM 引脚,但这可以通过servoblaster 解决。然而,由于 Servoblaster 使用了 Rpi 的 DMA,它会干扰 Pi 操作 Web 服务器的能力吗?如果这个问题不清楚,我很抱歉我对所涉及的软件/网络概念有些不熟悉。此外,是否有进一步了解 DMA 功能的好资源?
提前感谢您的帮助。
linux - 在模式 4 GBA Linux 中使用 DMA
我在 GBA 中编写游戏是为了好玩,并想使用模式 4。我最近在模式 3 中创建了一个游戏,它的 dma 非常简单。如果我想在屏幕上绘制图像,dma 结构会相同吗?这是我所拥有的:
我觉得这不是使用模式 4,而是使用模式 3。我已经查看了如何修改我的代码,以便它可以在模式 4 下工作。提前谢谢你!
linux-device-driver - DMA Scatter-Gather 和连续内存?
我知道在 DMA 中使用 scatter-gather 是为了分散 - 从小内存段收集数据,因为不容易找到大的连续内存块。那么如果我需要做 SG,我应该使用 kmalloc 分配小块内存吗?我可以一次性为一个描述符分配的最大大小是多少?SG功能还有其他用途吗?
linux-kernel - Linux driver DMA transfer to a PCIe card with PC as master
I am working on a DMA routine to transfer data from PC to a FPGA on a PCIe card. I read DMA-API.txt and LDD3 ch. 15 for details. However, I could not figure out how to do a DMA transfer from PC to a consistent block of iomem on the PCIe card. The dad sample for PCI in LDD3 maps a buffer and then tells the card to do the DMA transfer, but I need the PC to do this.
What I already found out:
Request bus master
/li>Set the DMA mask
/li>Request a DMA channel
/li>Map a buffer for DMA transfer
/li>
Question:
What do I have to do in order to let the PC perform the DMA transfer instead of the card?
Thank your for your help!
First of all thank you for your replies. Maybe I should put my questions more precisely:
- In my understanding the PC has to have a DMA controller. How do I access this DMA controller to start a transfer to a memory mapped IO region in the PCIe card?
- Our specification demands that the PC's DMA controller initiates the transfer. However, I could only find examples where the device would do the DMA job (DMA_mapping.txt, LDD3 ch.15). Is there a reason, why nobody uses the PC's DMA controller (It still has DMA channels though)? Would it be better to request a specification change for our project?
Thanks for your patience.
linux - Linux dma 驱动程序 dma_cap_set,dma_cap_zero
我正在为 dma 编写一个 linux 设备驱动程序,在浏览 LXR 中的 dma 驱动程序源时,我遇到了函数 dma_cap_zero 和 dma_cap_set 以及整个家族 dma_cap_* 。这些功能是什么?还有一个名为 dma_transaction_type 的结构
枚举类型代表什么?
io - DMA控制器和I/O处理器有什么区别
给定起始内存地址和字数 DMA 控制器在 CPU 处理其他进程时传输数据。输入输出处理器也处理给定起始地址和字数的 I/O 进程。(如果我错了,请纠正我)
那么 IOP 和 DMA 控制器在功能上的区别是什么?
jvm - 为什么 java.nio.FileChannel transferTo() 和 transferFrom() 更快???它使用DMA吗?
为什么在某些 JVM/OS 组合上 java.nio.FileChannel transferTo() 和 transferFrom() 比逐字节传输(基于流或使用 ByteBuffer)更快???
这些方法是否使用直接内存访问 (DMA) 而不是为每个字节传输发出中断请求 (IRQ)?
memory - 从另一个 CPU 的内存中读取而不“请求”它,(DMA)
我有点想DMA
。
CPU's memory
是否可以在没有 CPU 通过某种形式的通信传送的情况下从 a 中读取?
比如“ reversed DMA
”。
我要问的项目是一个四轴飞行器控制板,我想访问一些由主 CPU 或微控制器计算的值,而不要求它发送到另一个微控制器。
因此,假设主 CPU 计算了某个方向的当前角度,并将其放入内存中。然后我想在不占用主 CPU 时间的情况下访问该值(通过另一个微控制器)。这可能吗?
问候丹尼尔
linux-kernel - mmap 可以处理 linux 驱动程序中的非连续页面范围吗?
我希望能够将单个用户空间地址映射到多个低内核内存块。我有一个驱动程序,我使用 pci_alloc_consistent() 分配多个 4MB 块。理想情况下,我希望用户空间进程将 8MB(即 2 个 4MB 块)视为映射到其虚拟地址空间的单个缓冲区。这在 mmmap() 中可能吗?或者,有没有办法使用 pci_alloc_consistent() 分配一块大于 4MB 的内核内存(或其他 api,只要内存是 dma 兼容的)?
我会很感激任何指示。谢谢。
io - 基于 FPGA 的 PCI IO 卡的 dma
我有台面电子 5i20 PCI 卡。提供了一个应用程序,它在 PC 上接收数据并将其发送到卡上的 FPGA,同样它从卡上的 FPGA 读回数据到 PC。
PCI 支持 33MHz 数据传输。使用简单的 for 循环,我可以分别向 FPGA 发送数据和从 FPGA 接收数据。但是我如何使用 DMA 概念,以便我可以读取文件数据并通过 PCI 将几块数据直接发送到卡。
问候