Electrical computers and digital data processing systems: input/ – Intrasystem connection – Protocol
Reexamination Certificate
1998-10-31
2001-12-18
Lee, Thomas (Department: 2182)
Electrical computers and digital data processing systems: input/
Intrasystem connection
Protocol
C710S105000, C710S030000, C710S061000, C713S322000
Reexamination Certificate
active
06332173
ABSTRACT:
CROSS-REFERENCE TO RELATED APPLICATIONS
Not applicable.
STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH
Not applicable.
BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention relates to microcontrollers, and more specifically, to a microcontroller having automatic parity checking capabilities in an asynchronous serial port.
2. Description of the Related Art
Specialized microcontrollers with integrated communication features are becoming particularly attractive for communications applications. A microcontroller, or an embedded controller, is uniquely suited to combining functionality onto one monolithic semiconductor substrate (i.e. chip). By embedding various communication features within a single chip, a communications microcontroller may support a wide range of communication applications.
Microcontrollers have been used for many years in many applications. A number of these applications involve communications over electronic networks, such as telephone lines, computer networks, and local and wide area networks, in both digital and analog formats. In communications applications, a microcontroller generally has a number of integrated communications peripherals in addition to the execution unit. These can be low and high speed serial ports, as well as more sophisticated communications peripherals, such as a universal serial bus (USB) interface, and high level data link control (HDLC) channels.
An asynchronous serial communications port is one such common additional feature in a microcontroller. An asynchronous serial link allows the microcontroller to communicate with other devices or over data lines by sequentially sending and receiving bits of data. The “asynchronous” nature indicates these ports do not provide a separate clock signal to clock the data. Instead, the rate at which data is sent and received must be predetermined or prenegotiated, and independently controlled on both the sending and receiving ends. This data rate is known as the baud rate, which is the inverse of one bit period. The baud rate is generally one of a number of predefined rates, which are standard within the industry. Such rates include 1200, 2400, 4800, 9600, 19.2K, 28.8K, 33.3K, and 54K baud and high data transfer rates.
Due to the prevalence of serial data communication, many microcontrollers include one or more asynchronous serial ports (ASPs) which can transmit and receive data one bit at a time. Such microcontrollers typically employ interrupt signals to notify the microprocessor core that an ASP requires service. An ASP typically issues an interrupt request signal when a data unit has been received by the ASP and needs to be transferred from the ASP to an external memory unit, when the ASP is finished transmitting a data unit and the next data unit to be transmitted must be transferred from the external memory unit to the ASP, or when an error occurs.
Error checking is a primary concern with serial data communication. If a signal has errors when received, the ASP needs to be able to detect such errors and request retransmission. Parity checking has long been utilized as a basic form of such error detection. Parity may be used in a number of ways, although primarily either an odd or an even configuration is employed. The transmitter and the receiver agree that parity checking is enabled and on the specific type of parity to be used. With parity enabled, a parity bit is included in every transmitted data frame. The value of the parity bit is set so that all data bytes, including the data bits and the parity bit, have either an odd number or an even number of set bits, depending on the parity configuration used.
An ASP can be configured for a variety of data formats, although historically seven or eight data bits are typical values. A number of nine-bit serial protocols, however, have been developed using microcontrollers. These protocols are described in the Am 186ES Users Manual and Am 186ED Users Manual, both by Advanced Micro Devices, Inc. of Sunnyvale, Calif. As described in that documentation, and as discussed below, a separate control bit is set or reset to act as the ninth data bit during transmission and reception of data. This ninth “data” bit is employed as an address bit, particularly useful in multi-drop protocols.
In protocols using an address bit, the address bit is typically transmitted as the last data bit. However, this configuration has complicated automatic parity generation and detection. Previously, therefore, parity support could only be provided through dedicated software routines which were able to skip or ignore the presence of the address bit. The utility of such software has been dependent on the number of bits in the frame. Furthermore, in systems supporting parity through software, interrupts could not be generated off the parity bit.
SUMMARY OF THE INVENTION
In a system according to the invention, a microcontroller provides an asynchronous serial port having automatic parity support for frames with address bits. Within each frame, the address bit follows a parity bit following a series of data bits and precedes a high stop bit. To support automatic parity generation and detection in transmission and reception of frames having an address bit, the parity bit is placed immediately after the last data bit. In this way, the generation and detection of the parity bit does not require independent software control. Likewise, interrupts can be generated automatically, directly off of the received parity bit. In addition, parity generation and detection is not dependent upon the length of frames in the asynchronous serial port. By placing the parity bit immediately after the last data bit and before the address bit in a frame, parity bit generation, and detection is performed automatically and independently of the number of data bits. This configuration provides full hardware support for interrupts generated from parity bits.
REFERENCES:
patent: Re. 31814 (1985-01-01), Lubin
patent: 3618037 (1971-11-01), Wollum et al.
patent: 3940563 (1976-02-01), Susset
patent: 4453228 (1984-06-01), Loskorn
patent: 4862480 (1989-08-01), Gupta
patent: 4907225 (1990-03-01), Gulick et al.
patent: 4949333 (1990-08-01), Gulick et al.
patent: 5043943 (1991-08-01), Crisp et al.
patent: 5117428 (1992-05-01), Jeppesen, III et al.
patent: 5123091 (1992-06-01), Newman
patent: 5140679 (1992-08-01), Michael
patent: 5173683 (1992-12-01), Brighenti et al.
patent: 5187708 (1993-02-01), Nakatani et al.
patent: 5192947 (1993-03-01), Neustein
patent: 5263054 (1993-11-01), Davis et al.
patent: 5345582 (1994-09-01), Tsuchiya
patent: 5357249 (1994-10-01), Azaren et al.
patent: 5530704 (1996-06-01), Gibbons et al.
patent: 5537425 (1996-07-01), Tsou
patent: 5555438 (1996-09-01), Blech et al.
patent: 5682552 (1997-10-01), Kuboki et al.
patent: 5713028 (1998-01-01), Takahashi et al.
patent: 5717870 (1998-02-01), Dobson
patent: 5729004 (1998-03-01), Kim et al.
patent: 5748887 (1998-05-01), Kim et al.
patent: 5805909 (1998-09-01), Diewald
patent: 5808909 (1998-09-01), Rees
patent: 5878061 (1999-03-01), Hauck et al.
patent: 5896549 (1999-04-01), Hansen et al.
patent: 5938773 (1999-08-01), Hauck et al.
patent: 5958024 (1999-09-01), Typaldos et al.
patent: 5978865 (1999-11-01), Hansen et al.
patent: 5978954 (1999-11-01), Ou et al.
patent: 5983291 (1999-11-01), Leger et al.
patent: 6015081 (2000-01-01), Okabayashi et al.
patent: 6028675 (2000-02-01), Fields et al.
patent: 6105081 (2000-08-01), Typaldos
patent: 3610523A1 (1987-10-01), None
patent: 0120172A1 (1984-10-01), None
patent: 0257405A1 (1988-03-01), None
patent: 0311448A2 (1989-04-01), None
patent: 0339305A2 (1989-11-01), None
patent: 0830679B1 (1999-10-01), None
patent: 07023013A (1995-01-01), None
“Am186™ Ed/EDLV Microcontrollers User's Manual,” Advanced Micro Devices, Inc. 1997, Chapters 1 and 10.
“Am186™ ES/ESLV and AM188™ ES/ESLV High Performance, 80C186-/80C188-Compatible and 80 L 186-/80L 188-Compatible, 16-Bit Embedded Microcontrollers,” Advanced Micro Devices, Inc., Feb. 1997, pp. 1-2, 5-6, 9-10 and 51-52.
“Asynchronous serial multid
Advanced Micro Devices , Inc.
Akin Gump Strauss Hauer & Feld & LLP
Lee Thomas
Schuster Katharina
LandOfFree
UART automatic parity support for frames with address bits does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with UART automatic parity support for frames with address bits, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and UART automatic parity support for frames with address bits will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2576705