Integration is when the three design areas are brought together to form a prototype, which in turn becomes the production model. The three areas are hardware, software, presentation and it is the presention that sells as any Vapourwave designer knows.
The presentation is just that. If the stereo generator is a self contained unit then a means of presenting the status of the equipemnt on the front and rear paneles is required. If more than a front panel overview is required we can add a USB, LAN or serial interfaces for monitoring, configuring and control from remote.
However an embedded design implies all presentation is delegated to the housing, so we are more interested in providing interfaces by which operational status is read and the operational parameters written. The presentation and gathering of this information is in the domain of the housing equipment. This connection could be made by either a serial link (SPI, I2C) or a parallel (CPU Bus). Even the inputs and outputs can be embedded by passing through a pre-conditioning or post-conditioning in the housing eg: the audio source could be a satellite link or land line or studio that has to be chosen before reaching stereo generation.
It has already been mentioned, in passing, that the incoming audio channel levels be displayed on a led bar.
The hardware operation is synchronous and the software asynchronous in operation. In this way the calculation time of the software is divorced from the hardware timings.
We do this by having a master Xtal clock of 24.588MHz that drives the DSP and from which we derive master clocks for the DAC and ADC, bit clocks and frame clocks. The whole signal flow is synchronised and is as accurate as the Xtal clock.
However the DSP runs asynchronously and in fact spends about 30% in idle. The hardware signals to the DSP when incoming data is ready, the DSP calculates the resut and places the MPX samples in storage, then at a suitable time the hardware signals extraction of the calculated data without interfering with the DSP operation.
A RDS can be added externally, internally, in series or in parallel. Externally the MPX signal is taken and along with pilot derived from the self same MPX or an externally supplied pilot and the RDS modulation injected into the MPX stream. Internally a number of short cuts can be taken like not using the pilot.
Using the pilot embedded in the MPX is called serial RDS injection and when a independent pilot reference used it is parallel RDS injection
If the RDS generator is internal to the stereo generator a number of simplifications can be made to the signal flow apart from sharing the same power supply. The pilot is readily available at some stage in the stereo generator so there is no need for pilot extraction from the MPX. However with a digital design there is no need for a pilot reference with subsequent x3 multiplication by the RDS generator, the 57KHz carrier can be generated directly and supplied to the RDS generator.