Hi, I'm doing a project in clockless uart..as u know that the primary function of uart is parallel to serial conversion while transmitting and serial to paralel conversion while receiving..I was wondering if someone could tell me as how can i do a parallel to serial conversion and vice versa without using a clock. Thank You SHASHI
Issues on Shift Register in a Clockless UART
Started by ●April 20, 2004
Reply by ●April 20, 20042004-04-20
Simple answer: You cannot. You can of course generate your own clock... Peter Alfke> From: shashi22k@rediffmail.com (Shashi) > Organization: http://groups.google.com > Newsgroups: comp.arch.fpga > Date: 20 Apr 2004 16:35:16 -0700 > Subject: Issues on Shift Register in a Clockless UART > > Hi, > I'm doing a project in clockless uart..as u know that the primary > function of uart is parallel to serial conversion while transmitting > and serial to paralel conversion while receiving..I was wondering if > someone could tell me as how can i do a parallel to serial conversion > and vice versa without using a clock. > > Thank You > SHASHI
Reply by ●April 21, 20042004-04-21
it should perhaps be pointed out that UART's aren't in fact clockless.. they are self clocking... that is the clock is passed with the data (i.e. the leading edge of the start bit is the re-syncing edge) Simon "Peter Alfke" <peter@xilinx.com> wrote in message news:BCAB2209.5F87%peter@xilinx.com...> Simple answer: You cannot. You can of course generate your own clock... > Peter Alfke > > > From: shashi22k@rediffmail.com (Shashi) > > Organization: http://groups.google.com > > Newsgroups: comp.arch.fpga > > Date: 20 Apr 2004 16:35:16 -0700 > > Subject: Issues on Shift Register in a Clockless UART > > > > Hi, > > I'm doing a project in clockless uart..as u know that the primary > > function of uart is parallel to serial conversion while transmitting > > and serial to paralel conversion while receiving..I was wondering if > > someone could tell me as how can i do a parallel to serial conversion > > and vice versa without using a clock. > > > > Thank You > > SHASHI >
Reply by ●April 21, 20042004-04-21
Simon Peacock wrote:> it should perhaps be pointed out that UART's aren't in fact clockless.. they > are self clocking... that is the clock is passed with the data (i.e. the > leading edge of the start bit is the re-syncing edge)The LIN Bus takes this a step further, in that a BAUD rate is not assumed, but they send a known preamble byte (55H or AAH IFW), and that allows 'floor sweepings grade' uC / RC osc to autobaud. No reason the same ideas could not be used on a FPGA. You would start a low precision burst oscillator on the leading edge, calculate your AutoBAUD divisor on the first byte, and run until a known stop char/count, then go back to clockless-sleep. Rather high baud rates would seem to be possible... -jg
Reply by ●April 21, 20042004-04-21
Jim Granville wrote:> > Simon Peacock wrote: > > it should perhaps be pointed out that UART's aren't in fact clockless.. they > > are self clocking... that is the clock is passed with the data (i.e. the > > leading edge of the start bit is the re-syncing edge) > > The LIN Bus takes this a step further, in that a BAUD rate is not > assumed, but they send a known preamble byte (55H or AAH IFW), and > that allows 'floor sweepings grade' uC / RC osc to autobaud. > > No reason the same ideas could not be used on a FPGA. > > You would start a low precision burst oscillator on the leading edge, > calculate your AutoBAUD divisor on the first byte, and run > until a known stop char/count, then go back to clockless-sleep. > > Rather high baud rates would seem to be possible...But this is not "clockless". If the OP really means a UART using *no* clock, I don't see how this can be done. Sequential logic can be made that does not require a clock, but a UART must have a clock to measure time. The UART data format provides information on the timing of the start of a word, but you still need a clock to measure the bit times. -- Rick "rickman" Collins rick.collins@XYarius.com Ignore the reply address. To email me use the above address with the XY removed. Arius - A Signal Processing Solutions Company Specializing in DSP and FPGA design URL http://www.arius.com 4 King Ave 301-682-7772 Voice Frederick, MD 21701-3110 301-682-7666 FAX
Reply by ●April 21, 20042004-04-21
"rickman" <spamgoeshere4@yahoo.com> wrote in message news:4086954D.FDCD1100@yahoo.com...> But this is not "clockless". If the OP really means a UART using *no* > clock, I don't see how this can be done. Sequential logic can be made > that does not require a clock, but a UART must have a clock to measure > time. The UART data format provides information on the timing of the > start of a word, but you still need a clock to measure the bit times. > > -- > > Rick "rickman" CollinsYou could have a huge delay line with taps spaced at the center of each bit period. Latch the taps' output with the stop bit. I'll get me coat.... Cheers, Syms.
Reply by ●April 21, 20042004-04-21
I would call that self-synchronizing, not self-clocking. Manchester code is self-clocking, provided you get it going "on the right foot". Peter Alfke> From: "Simon Peacock" <nowhere@to.be.found> > Organization: TelstraClear > Newsgroups: comp.arch.fpga > Date: Wed, 21 Apr 2004 20:31:28 +1200 > Subject: Re: Issues on Shift Register in a Clockless UART > > it should perhaps be pointed out that UART's aren't in fact clockless.. they > are self clocking... that is the clock is passed with the data (i.e. the > leading edge of the start bit is the re-syncing edge) > > Simon > > > "Peter Alfke" <peter@xilinx.com> wrote in message > news:BCAB2209.5F87%peter@xilinx.com... >> Simple answer: You cannot. You can of course generate your own clock... >> Peter Alfke >> >>> From: shashi22k@rediffmail.com (Shashi) >>> Organization: http://groups.google.com >>> Newsgroups: comp.arch.fpga >>> Date: 20 Apr 2004 16:35:16 -0700 >>> Subject: Issues on Shift Register in a Clockless UART >>> >>> Hi, >>> I'm doing a project in clockless uart..as u know that the primary >>> function of uart is parallel to serial conversion while transmitting >>> and serial to paralel conversion while receiving..I was wondering if >>> someone could tell me as how can i do a parallel to serial conversion >>> and vice versa without using a clock. >>> >>> Thank You >>> SHASHI >> > >
Reply by ●April 22, 20042004-04-22
I would agree ... and stand corrected ... but can you always think of the right words ... :-) But I did point out that you re-sync... that implies something... and I believe the delayed shift register (mentioned in this thread) has already been done but that also requires a clock. and so I think most people have seen an "AT" modem.. re auto baud.. Hayes and stuff like that .. even they have clocks. FPGA's are synchronous.. so is a UART. All comms is synchronous or synchronised. (unless its simply on and off!) Simon "Peter Alfke" <peter@xilinx.com> wrote in message news:BCABF216.5FA4%peter@xilinx.com...> I would call that self-synchronizing, not self-clocking. > Manchester code is self-clocking, provided you get it going "on the right > foot". > Peter Alfke > > > From: "Simon Peacock" <nowhere@to.be.found> > > Organization: TelstraClear > > Newsgroups: comp.arch.fpga > > Date: Wed, 21 Apr 2004 20:31:28 +1200 > > Subject: Re: Issues on Shift Register in a Clockless UART > > > > it should perhaps be pointed out that UART's aren't in fact clockless..they> > are self clocking... that is the clock is passed with the data (i.e. the > > leading edge of the start bit is the re-syncing edge) > > > > Simon > > > > > > "Peter Alfke" <peter@xilinx.com> wrote in message > > news:BCAB2209.5F87%peter@xilinx.com... > >> Simple answer: You cannot. You can of course generate your own clock... > >> Peter Alfke > >> > >>> From: shashi22k@rediffmail.com (Shashi) > >>> Organization: http://groups.google.com > >>> Newsgroups: comp.arch.fpga > >>> Date: 20 Apr 2004 16:35:16 -0700 > >>> Subject: Issues on Shift Register in a Clockless UART > >>> > >>> Hi, > >>> I'm doing a project in clockless uart..as u know that the primary > >>> function of uart is parallel to serial conversion while transmitting > >>> and serial to paralel conversion while receiving..I was wondering if > >>> someone could tell me as how can i do a parallel to serial conversion > >>> and vice versa without using a clock. > >>> > >>> Thank You > >>> SHASHI > >> > > > > >
Reply by ●April 22, 20042004-04-22
Simon Peacock wrote:> I would agree ... and stand corrected ... but can you always think of the > right words ... :-) > > But I did point out that you re-sync... that implies something... and I > believe the delayed shift register (mentioned in this thread) has already > been done but that also requires a clock. > and so I think most people have seen an "AT" modem.. re auto baud.. Hayes > and stuff like that .. even they have clocks. FPGA's are synchronous.. so > is a UART. All comms is synchronous or synchronised. (unless its simply on > and off!)It becomes an exercise in semantics : Uarts require triggered, time interval sampling. You _can_ build a uart without an external, precision, always on clock source. To some, that qualifies as 'not using a clock'. Others might say any digital-divider must have a register, and that register must be clocked, so all registers are verboten in a purists 'Clockless uart'. That design can be done with a delay line ( which needs baud-precision - not really a common building block...), plus it's not clear how it would manage sync in packed streaming data... Complex Async ICs design is not truly clockless, but it can be self-timing, and not locked to a common bus'd clock. The OP's question sounded rather like homework, than any real problem needing a practical solution.... -jg
Reply by ●April 22, 20042004-04-22
What about human speech? (Sometimes I wish XON/XOFF worked with the missus!) Are brains synchronous? I wish mine was, maybe then it would work a little more reliably... cheers, Syms. "Simon Peacock" <nowhere@to.be.found> wrote in message news:408771b3@news.actrix.gen.nz...> is a UART. All comms is synchronous or synchronised. (unless its simplyon> and off!) > > Simon >