2

I'm a programmer and I'm interested in testing an idea I have for a SATA intercept hardware device. I'd like to design a custom piece of hardware involving SATA connections, splitting of signals etc. My first planned step is understanding the protocol and firmware. Then taking a few courses, maybe guided hands-on projects via kits to get acquainted with circuit engineering. And I imagine all the parts I should need exist. The only thing I really have no idea how to get started with is testing. it seems like before I build anything physical, there must be some tooling to emulate experimental hardware peripherals. There's a question of I/O performance and such depending on how I handle the protocol for my goal, so I'm hoping there's a way to test that performance with sort of a hardware design emulation system. It would be really nice if there were tools that could connect to Qemu to test integration.

What tools exist in the industry for this? Or is this sort of thing usually done physically in this field?

J.Todd
  • 123
  • 4
  • 1
    Probably this question is better answered in electrical engineering se. – NMech Aug 19 '21 at 03:16
  • Try Matlab-Simulink. There are a ton of librarys for all kinds of simulation. You should be good to go there – RaulG Aug 19 '21 at 06:45
  • yep take it to EE stack – Pete W Aug 19 '21 at 21:45
  • Before you can simulate something you need to have some idea how you are going to build it so you know what kind of simulators are required because there is no general purpose emulator. Many parts don't have simulation models at all because a great many variety of parts exist (and those who a particular model badly enough put in laborious efforts to make the model keep it to themselves). For example, simulators for FPGAs exist and are actually come standard, but for a circuit board that might contain any of the hundreds of thousands of ICs out there? You can forget about it. – DKNguyen Aug 20 '21 at 19:40
  • And then then there are issues with emulating code on a process rin tandem with the infinite variety of possible components connected to it because now you have to marry two different areas disparate simulators together. If you are so uncertain about your design that you need to simulate and then really mess around with the simulation on a grand scale to make find something that works because you have no idea ahead of time if it is even remotely functional then it probably means you do not know enough to build it. – DKNguyen Aug 20 '21 at 19:52
  • 2
    That last step of making a PCB to test is always somewhat of a leap of faith and in many cases is the fastest, and cheapest most accurate way to check something. The most simulation is done for things like RF board where every physical detail of the final implementation matters but even those need to ultimately test and tinker in the real world. Note that at SATA speeds, SATA qualifies as ones of these things. Transmission lines. Be forewarned. Expect more than one iteration. Remember that simulations are a way to reduce risk. This is not the same as being inexpensive. – DKNguyen Aug 20 '21 at 19:52

0 Answers0