ΣSigmaStudio Ask AI Русский Log in

Can i buffer the data in real time and use it for post processing?

Processors & DSP its-asim Aug 30, 2013 00:00 2 replies Original on forum ↗
Thread Summary

Thread Summary

The user is experiencing lag in interpreting a 4kHz digital data stream using a microcontroller, leading to missed bits. The final answer suggests using Analog Devices' SHARC or Blackfin processors, which can receive and process the data through serial peripherals and store it in internal memory. The ADSP-21489 processor is recommended for its capability to handle real-time data and interface with display units or PCs via UART. The accompanying answer clarifies that these processors can buffer data in real-time and use it for post-processing.
AI Generated Content
Subscribe
its-asim Question
Aug 30, 2013 00:00

Hello every one

I have to receive a stream of data at 4khz interpret this stream of data and display it onto the users screen in the interpreted binary form only.

The problem is that my algorithm slightly lags after each interpretation of 1, because of the additional internal machine cycles for computation in my microcontroller.

All received signals are noise free and with 5V DC

As you can see in the image attached i have missed some 0s and 1s. I have tried all methods such as detecting rising edges and falling edges ,using timers etc , to detect the type of bit but all fail sooner or later in the streaming data interpretation.

Other than trying to correct the problem via correction in the micro-controller algorithm etc (which i have already tried a lot) following are my questions:

1. Are there ready made ICs available to directly interpret the received digital data , and transmit it i on an out put pin.

2. Cab i buffer the data in real time and use it later on for post processing if yes what are the ICs and the paraphernalia.

In the Image attached http://s18.postimg.org/he9zrt4tl/New_File0.png

channel 2(blue) is the streaming data and channel 3 is interpreted data (pink)

So this is the project:

We have one TX and one RX in remote locations. They communicate wirelessly. They dont have any established communication protocol. They communicate as flows. when no data is being transmitted the tx will continuously transmit a square wave at 4khz. when data is to be transmitted, then tx will first send 1B 23 (data) and then 1B 25.

eg.

if i have to transmit 55 34 65 76 23 89 00 23 54 the tx will transmit as follows

1B 23 55 34 65 76 23 89 00 23 54 1B 25. I

Our project deals with an up-gradation of the present system, hence we have to replace the module that converts the received stream into the data by interpreting the values.

Our present system just received data from a serial data pin from the wireless RX. hence the Rx does all the receiving of data over the air and wireless data reception is not my concern. As i receive the data directly from the serial data pin in the rx, hence i can say the data received in my system is similar to data being received directly via wire.

The received signals from the serial data pin are free from any error and are of 5V DC (the RX takes care of all this signal conditioning before sending the received data to the serial data pin ) so i am sure that the data received from the serial data pin is exactly what was transmitted.

So in short i have to differentiate the square wave from the 1b 23 (DATA) 1b 25 and relay it forward .That is where i need interpretation.

Link below shows tx of 55 55 55 55 55.

http://s24.postimg.org/nlr1175md/New_File0.png

This is correctly interpreted because the delay in uc interpretation is not enough in small data tx to cause an error but in larger tx it results in an error.

I hope i have explained the question well

ADIApproved Reply
Oct 2, 2013 00:00

Hi Asim,

Sorry for the delay in the response and thanks for explaining the project in detail .

Regarding your two question

Are there ready made ICs available to directly interpret the received digital data , and transmit it i on an out put pin.

Cab i buffer the data in real time and use it later on for post processing if yes what are the ICs and the paraphernalia.

>>There 2 family of processors –SHARC (floating-point)and BLACKFIN(Fixed-Point)

http://www.analog.com/en/processors-dsp/products/index.html

The processors from both these families can do the job for you . It can receive the digital data through one of the Serial Peripherals (ex SPORT) and store it in the internal memory .This data can be used for processing or can be transmitted onto the output pin . Depending on the type of the display device , you can choose an appropriate peripheral to interface it. In Blackfin processors , we have the PPI module which can be used to interface the display unit to the processor .

Also , the data can be sent to the PC through UART peripheral .

We have some example projects (which comes along with the VDSP++ or CCES toolchain) like real time Audio talkthrugh codes in SHARC family of processors . You can refer to the datasheet of ADSP-21489 processors given in the following link for more details on the processing capability and the peripherals available .

http://www.analog.com/en/processors-dsp/sharc/adsp-21489/products/product.html

Let me know if you have more questions.

Regards,

Mahesh

EZAdministrator Reply
Aug 2, 2018 00:00

This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.

Thank you,
EZ Admin