Menu

Update

New stuff today:

  • All process are now self-clocked to run independently. Each process is made sensitive to a unique signal which is precessed within the process itself (usually at the end). While this isn't at core synthesizable (each process becomes a testbench |->), it shouldn't be much work later on to precess each process' clock signal off a master clock of some type, thus solving that problem. I just don't want to have to fiddle with synchronizing that many signals right now, when I have a lot of general code I need to get working... at least I don't have to run any more infinite loops anywhere in the whole codebase to get process to progress in general, and I am free to write "real" (i.e. orthogonal) VHDL code as I need to.

  • A lot of networking fixes went in today. A couple of initialization bugs were fixed, and the network_port's send_message and receive_message signals are now properly sending and receiving data through native sockets on the appropriate TCP ports. In principle, I now have a functioning bus through which the controls, when instantiated, can boot up into the Controlix environment, start interacting with other controls, and offering and using services in general.

  • The directory structure in the repository has been reworked again. There are only four subdirectories under src/ now: boot (non-control-based setup code), lib (non-control-based general library code), controls(the actual controls for simulation) and native (the native C support code). Much more logical, regular and Controlix-ish in layout.

A lot of stuff is working now that was giving me headaches before. In particular, it is a time for joy indeed that I can reliably and correctly get to the damn native sockets |->. I can now move ahead with some more basic enhancements to the whole system: client/server shell and command interaction, a signals server for generic shared variables/signals, a network server for DHCP-style routing and gateways and subnetting, and a memory server to wrap around a native malloc().

Stay tuned....

Posted by Jon Taylor 2013-05-30

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.