Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Radio Data System
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=== Baseband coding (Data-link layer) === At the data link layer, 26 consecutive bits form a "block", consisting of 16 data bits followed by 10 error correction bits. Four blocks make a 104-bit "group". The error correction bits also encode the "offset", or block number within a 4-block group. The error correction is done using a 10-bit [[cyclic redundancy check]], with polynomial {{math|x{{sup|10}}+x{{sup|8}}+x{{sup|7}}+x{{sup|5}}+x{{sup|4}}+x{{sup|3}}+1}}.{{r|EN50067|p=13}} (Neither a preset nor post-invert is used, as they are not necessary with a fixed-size data field.) The CRC is also summed with one of five "offset" words which identify the block: A, B, C, Cβ², or D. Four consecutive blocks (ABCD or ABCβ²D) make up a "group" of 104 bits (64 data bits + 40 check bits). There are slightly over 11.4 groups transmitted per second. There is no gap between blocks. The receiver synchronizes to groups and blocks by checking CRCs on each 26 bits until synchronization is achieved. Once synchronized (the offset word is predictable), the code is capable of correcting up to 5-bit [[burst error]]s.{{r|EN50067|p=60}} This basic modulation and block structure was originally developed for the {{ill|MBS (radio paging)|fr|MBS (radiomessagerie)}} "mobile search" protocol, with the difference that MBS (or the North American equivalent MMBS "modified MBS") does not use an offset word. To allow the two systems to interoperate (and to allow FM radio stations to transmit RBDS data while maintaining their pager contracts), the RBDS standard defines a sixth all-zero offset word E. Groups of four E blocks may be mixed with RBDS groups, and ignored by RBDS receivers. (Likewise, the RBS offset words are chosen to appear as uncorrectable errors to MBS receivers.) Data within each block (and group) is transmitted [[most significant bit first]], and thus are numbered from bit 15 (transmitted first) to bit 0 (transmitted last). The most frequently information transmitted is a 16-bit "program identification" code, identifying the transmitting radio station. Blocks A and Cβ² always include the PI code; offset C is used when the third block contains something else. ==== Shared structure ==== Block 1 always contains the 16-bit program identifier. The first 11 bits (bits 15β5) of block 2 are also the same in all groups. The first 4 bits (bits 15β11) of block 2 are the "group type code", which describe the interpretation of the remaining data. Each group type comes "A" and "B" variants, distinguished by the fifth "B" bit (bit 10): If B=0, then the group is 0A through 15A, and contains 5+16+16 = 37 bits of data. If B=1, block 2 contains a PI code (and is encoded with offset word Cβ²), the group is one of 0B through 15B, and contains 21 bits of data. Within Block 1 and Block 2 are structures that will always be present in both group versions, for fast and responsive identifications. The first block of every group, will always be the program identification code. The second block dedicates the first 4 bits for Application/Group Type. {| class="wikitable" |- | |Block 1 | colspan="5" |Block 2 |- |Block Meaning |Program Identification Code |GTYPE |B0 |TP |PTY |''varies'' |- |bit notation per block |b15 β b0 |b15βb12 |b11 |b10 |b9βb5 |b4βb0 |- |Fixed Meaning Per Group? |Yes |Yes |Yes |Yes |Yes |No |} Meaning of Block 2 Bits * GTYPE: Group Type * B0: If B0=0 then Message Group Type A else Type B * TP: Traffic Program. Indicates this channel includes periodic [[traffic report]]s. * PTY: Program Type (See {{section link||Program types}}.) * ????: Rest of the bits are group type dependent ===== Message version A ===== {| class="wikitable" |- | |Block 1 | colspan="5" |Block 2 |Block 3 |Block 4 |- |Block Meaning |Program Identification Code |Group Type |B0 |TP |PTY |APP |Group Specific Payload |Group Specific Payload |- |Block Payload Bit Value |XXXX XXXX XXXX XXXX |XXXX |0 |X |XXXXX |XXXXX |XXXX XXXX XXXX XXXX |XXXX XXXX XXXX XXXX |- |Offset Value (Sync) |Offset A | colspan="5" |Offset B |Offset C |Offset D |} ===== Message version B ===== Block 3 is used for repeating program identification code. {| class="wikitable" |- | |Block 1 | colspan="5" |Block 2 |Block 3 |Block 4 |- |Block Meaning |Program Identification Code |Group Type |B0 |TP |PTY |APP |Program Identification Code |Group Specific Payload |- |Payload Bit Value |XXXX XXXX XXXX XXXX |XXXX |1 |X |XXXXX |XXXXX |XXXX XXXX XXXX XXXX |XXXX XXXX XXXX XXXX |- |Offset Value (Sync) |Offset A | colspan="5" |Offset B |Offset C' |Offset D |} ==== Program identification code (PI code) ==== This allows for quick identification of radio program type, based on country, coverage area, and program reference number. While the country code is specified by the standard, bit 11 to bit 0 is specified by each country local authorities. {| class="wikitable" |- |PI Code | colspan="4" |Nibble 0 | colspan="4" |Nibble 1 | colspan="4" |Nibble 2 | colspan="4" |Nibble 3 |- |Meaning | colspan="4" |Country Code | colspan="4" |Program Area Coverage | colspan="8" |Program Reference Number |- |Bit Position |b15 | | |b12 |b11 | | |b8 |b7 | | |b4 |b3 | | |b0 |} Country codes are re-used, but only in geographically distant regions beyond FM broadcast range from each other. For example, country code F is assigned to [[France]], [[Norway]], [[Belarus]] and [[Egypt]].{{r|EN50067|p=71}} Neighbouring countries never have the same country code which means it is not necessary for PI codes to be coordinated with adjacent countries. ==== Group type ==== This is a short list of the full group type. Each group type may have a secondary version available {| class="wikitable" |- |Group Type |Bit Value |Message Version A |Message Version B |- |0 |0000 | colspan="2" |Basic Tuning and Switching Information Only |- |1 |0001 |Program Item Number and Slow Labeling Code |Program Item Number |- |2 |0010 | colspan="2" |Radio Text |- |3 |0011 |Application Identification for Open Data Applications |Open Data Applications |- |4 |0100 |Clock Time and Date |Open Data Applications |- |etc... |etc... | | |} ==== Traffic Program ==== This can be considered an additional program type bit, and indicates that the station broadcasts periodic [[traffic report]]s. By including it in every group, a receiver can quickly search for a station which includes traffic reports. Another bit, traffic announcement (TA), is sent in block types 0A, 0B and 15B to indicate that such a report is in progress. It is common for otherwise-[[simulcast]] transmitters to have periodic local traffic reports which are customized to the individual transmitter. The traffic announcement bit tells a receiver that a transmitter-specific broadcast is in progress, and it should avoid switching frequencies while they are in progress. (There is a different form of traffic announcement bit in block type 14B, which indicates the presence of a traffic announcement on a ''different'' frequency, so that radio receivers can automatically switch.)
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)