Forum Discussion
Altera_Forum
Honored Contributor
21 years agoHi Scott,
Thank you for your feedback. Let me see if I can add some details about our requirements that will, hopefully, generate some additional feedback on this forum and help guide me towards the best Operating System (OS) selection for our application. I realize that the best choice may be not to use an OS at all and just let the application free run from main(). The project is based on a previous generation of product that uses the Stratix FPGA's and is in the early preliminary design stage. Here is a summary of our basic requirements for the embedded controller as I understand them now: Required capabilities: - Access to all Stratix-based registers that were previously accessed via an external controller - User Interface (UI) comms. to a host PC via an external USB 2.0 device controller - Compact Flash Interface (CFI) for removable storage - Control of at least one I2C, SPI, and SMBus device - Transfer data stored in SDRAM, via the external USB 2.0 controller, to the host PC >= 10 MBytes/sec. Wish list: - 10/100/1000 Base-T Ethernet support for alternate UI comms. - Flash File support for CFI - Calculate up to 256, 14-bit digital filter coefficients using single-precision floating point multiplies - Perform 2048-point FFT's every 200 milliseconds. - Provide a USB 2.0 hosting capabilty that allows data to be directly transferred to an USB 2.0-enabled HDD with the need for a host PC. In the past I have developed several "simple" embedded systems that had several real-time requirements associated with them. Meeting these real-time requirements usually meant developing several routines in assembly in order to maximize each clock cycle of the processor. Currently I'm personally not comfortable enough with any real-time OS (e.g. MicroC/OS-II) to feel that I can develop, based on the real-time requirements, my timing budgets and write the associated routines knowing how long that routine will take to execute (within some reasonable amount of accuracy). I can see how my comfort level would change once I start to use an OS and realize, over time, that the processing times are very deterministic. I'm sure there are lot of users out there who can share their experiences (good and bad) when using OS's that claim to produce determinstic processing results. Again, thanks for your comments. I look forward to more feedback. Regards, Brad.