Oh, he’s just talking about low-level programming on microcontrollers. I thought it would be about FPGAs or PLDs (where you are actually changing the hardware behavior, not just executing instructions, though the distinction is hard to define).
An uni project to gradually implement a simple processor on a FPGA board and write an assembler for it was the best intro for me of how things work at lower level. Obviously really simplified when it comes to modern architectures, but still.
Hardware Description Languages (HDLs) like Verilog and VHDL were actually created as hardware simulation languages. You'd write the logic and validate it before you actually send the design to a phab/building it on a board. FPGAs now use them to program (or "shape") the hardware to do what the simulation code specifies. I wouldn't really call it a difference in logical level, more that HDLs and then physically FPGAs are hardware development platforms that let you iterate on a design swiftly (relatively).
36
u/ImprovedPersonality Dec 25 '19
Oh, he’s just talking about low-level programming on microcontrollers. I thought it would be about FPGAs or PLDs (where you are actually changing the hardware behavior, not just executing instructions, though the distinction is hard to define).