เขียน/โดย : เกริก ภิรมย์โสภา (Krerk Piromsopa)
เขียนเมื่อ/ปรับปรุง : 2001-12-21 17:00:00
Motorola S-records เป็นมาตรฐานอีกอันหนึ่งที่นิยมใช้ในการเก็บ binary file ก่อนที่จะนำไปโปรแกรมลง PROM หรือ Storage Device ต่างๆ นอกจากนี้ LSI Logic ได้ปรับปรุงมาตรฐานดังกล่าวเพื่อให้มี S4-record สำหรับการเก็บ address และ symbol.
โครงสร้างของ extended S-record สามารถแสดงได้ดังนี้
S<type><length><address><data….><checksum>
S4<length><address><name>,<checksum>
ตัวอักษรแรก: เป็นตัวอักษรเริ่มต้นจะต้องเป็น “S” เท่านั้น (Start Character)
ตัวอักษรที่ 2: บอกประเภทของ Record ที่ส่ง (Type)
ตัวอักษรที่ 3 ถึง 4: แสดงความยาวของข้อมูลและ Address(Byte Count หรือ Length)
ตัวอักษรที่ 5 เป็นต้นไป: จะบอก Address ของข้อมูล ทั้งนี้ขึ้นอยู่กับว่าเป็น Record แบบ 16, 24 หรือ 32 บิต (กรณี S4 จะยาว 32 บิตเสมอ)
ตัวอักษร 2 ตัวสุดท้าย: ค่า checksum ของ Record นั้น (แบบ one’compliment checksum)
0 STARTING RECORD บอกถึงการเริ่มต้นของข้อมูล จะมีหรือไม่มีก็ได้
1 DATA RECORD WITH 16-bit ADDRESS ใช้ส่งข้อมูลที่มี Address ขนาด 16 บิต
2 DATA RECORD WITH 24-bit ADDRESS ใช้ส่งข้อมูลที่มี Address ขนาด 24บิต
3 DATA RECORD WITH 32-bit ADDRESS ใช้ส่งข้อมูลที่มี Address ขนาด 32บิต
4 SYMBOL RECORD (LSI extension)
5 NUMBER OF DATA RECORDS IN PRECEEDING BLOCK
6 ไม่ใช้งาน
7 ENDING RECORD FOR S3 RECORDS
8 ENDING RECORD FOR S2 RECORDS
9 ENDING RECORD FOR S1 RECORDS
ตัวอย่าง
S0030000FC ...... S325000004403C0880018D08DD900000000011000026000000003C0880012508DC50C50000B401 S32500000460C50100B8C50200BCC50300C0C50400C4C50500C8C50600CCC50700D0C50800D4FA S32500000480C50900D8C50A00DCC50B00E0C50C00E4C50D00E8C50E00ECC50F00F0C51000F49A S325000004A0C51100F8C51200FCC5130100C5140104C5150108C516010CC5170110C518011434 . . S70500000000FA
S0 ใช้บอกการเริ่มต้นข้อมูลS3 ใช้สำหรับส่งข้อมูล และS7 จบการทำงาน
Computer Architecture