S
S
seriouscope2021-09-11 14:48:57
Electronics
seriouscope, 2021-09-11 14:48:57

How to create pci-e device?

Hello, I want to create a simple DMA (read physical RAM address only) for windows using a pci-e bus. I understand that it would be logical to use, for example, the Arduino MKR Vidor 4000 (does it have competitors in the price category?), but read the article https://habr.com/ru/post/532672/ and https://radiokot.ru/forum/ viewtopic.php?f=8&t=106312it became very curious why a pcie-uart adapter is mainly used to interact with the bus, is it possible to use another interface, for example, a pcie-rs232 adapter and connect a raspberry pi micro to it (suppose the read speed does not matter) (that is, can I use DMA without drivers and specify device identifiers, or is it not possible because the controller built into the adapter limits my ability to interact with the bus?
Sorry for the stupid question, I have never worked with pcie))

Answer the question

In order to leave comments, you need to log in

1 answer(s)
A
Armenian Radio, 2021-09-11
@seriouscope

1) Let's start with the fact that from a logical point of view, RS232 and UART are completely identical.
2) An adapter is needed only to connect a microcontroller that does not have the physics of a PCI-E interface inside with a PCI-E interface. If you have a controller or FPGA with such an interface, then you do not need a converter either.
3) To work with the PCI-E bus, you must comply with extremely strict requirements for the layout of the board between the slot and the chip where the PCI-E goes. If you are an electronics noob, the knowledge gap is too wide, you will either have to do 5-10-100 intermediate projects, or take a ready-made and debugged board like the Arduino MKR Vidor 4000. Without experience in wiring multilayer RF boards, you will waste a lot of time (and money, you won’t make such a board at home if you don’t live in a board manufacturing factory - you will have to order each iteration at the factory).
4) The idea of ​​working directly with memory via UART is an immediate failure, because the maximum speed that UART is capable of is 16 megabits, it still needs to be pulled out of it, and memory can pump 10 gigabits in the worst case. I repeat. at worst.
That is, as a training project, this is all commendable and interesting, as a worker, it is not workable from the word "completely."

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question