Tải bản đầy đủ (.pdf) (19 trang)

Bài giảng Kỹ thuật vi xử lý: Chương 4 - Nguyễn Văn Thọ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (348.17 KB, 19 trang )

DuyTan University

Kỹ thuật Vi xử lý

ĐẠI HỌC DUY TÂN
KHOA CÔNG NGHỆ THÔNG TIN

CHƯƠNG 4

BỘ NHỚ BÁN DẪN &
THIẾT KẾ BỘ NHỚ CHO
HỆ VI XỬ LÝ

Nguyễn Văn Thọ
Khoa Điện tử viễn thông
Đại học Duy Tân – 2010

Nguyen Van Tho – Duy Tan University.

CÁC LOẠI BỘ NHỚ
Bộ nhớ không bị mất dữ liệu (non-volatile)








ROM (Read Only Memory)
PROM (Programmable ROM)


EPROM (Electrically programmable ROM)
Flash
EEPROM (Electrically Erasable Programmable ROM)
FeRAM (Ferroelectric Random Access Memory)
MRAM (Magnetoelectronic Random Access Memory)

Bộ nhớ bị mất dữ liệu (volatile)









SRAM (Static RAM)
SBSRAM (Synchronous Burst RAM)
DRAM (Dynamic RAM)
FPDRAM (Fast Page mode Dynamic RAM)
EDO DRAM (Extended Data Out Dynamic RAM)
SDRAM (Synchronous Dynamic RAM)
DDR-SDRAM (Double Data Rate SDRAM)
RDRAM (Rambus Dynamic RAM)

3-2


DuyTan University


Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

CẤU TRÚC & HOẠT ĐỘNG
Các chân địa chỉ
Pk-1 – P0
Đầu vào chọn
chip CE (SE)
Điều khiển
đọc RD (OE)
Điều khiển
ghi WR (WR)

Mạch
giải mã
trong

Tập hợp
nxm cell
nhớ 1bit

Các chân dữ liệu
Dm-1 – D0

m thường bằng 8,16,32
Tuỳ thuộc vào dung lượng bộ nhớ (tức là n) sẽ có số đường địa chỉ
tương ứng . VD : n= 8 Ỉ k=3 ; n=256 Ỉ k=8
3-3


Nguyen Van Tho – Duy Tan University.

CẤU TRÚC & HOẠT ĐỘNG
DUNG LƯỢNG 1 CHIP NHỚ
- Một chíp nhớ được xem như 1 mảng gồm n ô nhớ
- Dung lượng 1 chip nhớ thường biểu diễn nxm
- m chính là số chân dữ liệu của chip nhớ (m=4,8,16 ..)
- log2(n) = p là số chân địa chỉ của chip nhớ
HOẠT ĐỘNG ĐỌC
- Đưa các tín hiệu địa chỉ thích hợp vào các chân địa chỉ
- Đưa tín hiệu 0 vào chân điều khiển đọc (RD)
- Đưa tin hiệu 0 vào chân chọn chíp
¾ Khi đó m bit số liệu của thanh ghi có địa chỉ tương ứng xuất hiện ở các
chân dữ liệu
HOẠT ĐỘNG GHI
- Đưa các tín hiệu địa chỉ thích hợp vào các chân địa chỉ
- Đưa các số liệu cần ghi vào các chân dữ liệu
- Đưa tín hiệu 0 vào chân điều khiển ghi (RW)
- Đưa tin hiệu 0 vào chân chọn chíp
¾ Khi đó m bit số liệu được lưu ở thanh ghi có địa chỉ tương ứng

3-4


DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.


HOẠT ĐỘNG ĐỌC
Ví dụ bộ nhớ 8 byte. Đọc byte tại địa chỉ 011

0
1
1

P2
P1
P0

0

CE

0

RD
WR

000
001
010
011
100
101
110
111

00110100

10100101
11100111
10100100
00000000
11111111
00111110
01100110

D7
D6
D5
D4
D3
D2
D1
D0

1
0
1
0
0
1
0
0

3-5

Nguyen Van Tho – Duy Tan University.


HOẠT ĐỘNG GHI
Ví dụ: Ghi vào bộ nhớ tại địa chỉ 101 giá trị 10000001

1
0
1

P2
P1
P0

0

CE
RD

0

WR

000
001
010
011
100
101
110
111

00110100

10100101
11100111
10100100
00000000
11111111
10000001
00111110
01100110

D7
D6
D5
D4
D3
D2
D1
D0

1
0
0
0
0
0
0
1

3-6



DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

EPROM
Ghi vào EPROM





Ghi vào Eprom được gọi là lập trình cho Eprom
Sử dụng thiết bị chuyên dụng gọi là bộ nạp EPROM ( Program)
Chân Vpp được cấp điện áp gọi là điện áp lập trình ( thường là 12 V)
Dữ liệu tại các chân dữ liệu sẽ được ghi vào ô nhớ xác định bởi các
chân địa chỉ khi có xung đưa vào chân PGM

EPROM họ 27x
Số hiệu

Dung lượng

2708
2716
2732
2764
27128
27256

27512

1Kx8
2Kx8
4Kx8
8Kx8
16Kx8
32Kx8
64Kx8

A0–Ap-1
D0-Dm-1
OE
CE
PGM
Vpp

3-7

Nguyen Van Tho – Duy Tan University.

EPROM 2716
Sơ đồ chân

Chu kỳ đọc

U2
8
7
6

5
4
3
2
1
23
22
19
20
18
21

A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
OE
CE
VPP

O0
O1
O2

O3
O4
O5
O6
O7

9
10
11
13
14
15
16
17

Address
CE

Output
120

100

450

2716

3-8



DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

SO SÁNH 1 SỐ LOẠI ROM
Loại ROM

Thời gian ghi

Thời gian đọc

số lần ghi

Kích thước

ROM

NA

35 ns

0

Mbits

PROM

1μs/bit


35 ns

1

128 Kbits

EPROM

1ms/bit

45 ns

3

16 Mbits

Flash

1μs/2 KB

35 ns

1 triệu

GBits

EEPROM

10 ms/page


200 ns

10000

Mbit

FeRAM

60 ns

50 ns

1000 tỉ

32 Mbits

5ns

1015

4 Mbits

MRAM

5ns

3-9

Nguyen Van Tho – Duy Tan University.


SRAM
Đặc điểm:





6 transistors 1 bit: đắt!
Bị mất dữ liệu khi mất nguồn
Nhanh: thời gian đọc và ghi 5 ns
Liên tục tiêu thụ năng lượng

Ứng dụng:

A0–Ap-1
D0-Dm-1
OE
WE
CS

• Bộ nhớ nhỏ và nhanh (cache)

SRAM HỌ 62X

Số hiệu Dung lượng
6208
6216
6232
6264

62128
62256
62512

1Kx8
2Kx8
4Kx8
8Kx8
16Kx8
32Kx8
64Kx8

3-10


DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

DRAM
Đặc điểm:
• 1 transistor 1 bit: rẻ, tuy nhiên việc điều khiển quá trình làm tươi
làm tăng giá thành của DRAM
• Chỉ tiêu thụ năng lượng trong q trình làm tươi và truy nhập
• Tương đối nhanh: thời gian đọc và ghi 50 ns
• Mỗi một hàng phải được làm tươi sau 4 ms
¾Nếu có 1024 hàng, chu kỳ làm tươi sẽ là 4 μs


Được dùng làm bộ nhớ chính trong các hệ vi xử lý
Ví dụ: TMS 4464 (64K*4)
A0-A7
D0-D3
OE

WE

CAS

RAS

CAS: cho phép chốt địa chỉ cột
RAS: cho phép chốt địa chỉ hàng

3-11

Nguyen Van Tho – Duy Tan University.

SRAM & DRAM
Giá thành

SRAM

DRAM

Bộ điều khiển
làm tươi
Kích thước


3-12


DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Ví dụ 1 : Xét hệ vi xử lý có bộ nhớ 512KB
AX
BX
CX
DX
CS
SS
DS
ES

0023

Bộ nhớ gồm 1 khối nhớ 512K

A19
A18

19

A18


:

:

A0

A0
8

D7

.
.
.
.

D7

:

:

D0
2000

7FFFF
7FFFE

D0


20023
.
.
.
.

RD

MEMR

WR

MEMW

CS

00001
00000

BP
SP
SI
DI

MOV AH , [BX]

3-13

Nguyen Van Tho – Duy Tan University.


THIẾT KẾ BỘ NHỚ
Điều gì xảy ra khi vi xử lý đọc ô nhớ 20023 ?
AX
BX
CX
DX
CS
SS
DS
ES

F0XX
0023

A19
A18

Bộ nhớ gồm 1 khối nhớ 512K

0

A18

:

:

A0
D7

:

D0
2000

MEMR
MEMW

A0

11110000

7FFFF
7FFFE
.
.
.
.

D7
:

D0
RD
WR
CS

20023

11110000

.
.
.
.

00001
00000

BP
SP
SI
DI

MOV AX, 2000H
MOV DS, AX
MOV BX, 0023H
MOV AH , [BX]

3-14


DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Điều gì xảy ra khi vi xử lý đọc ô nhớ A0023 ?
AX

BX
CX
DX
CS
SS
DS
ES

F0xx
0023

A19
A18

Bộ nhớ gồm 1 khối nhớ 512K

0

A18

:

:

A0
D7
:

D0
A000


A0

11110000

7FFFF
7FFFE
.
.
.
.

D7
:

D0

MEMR

RD

MEMW

WR

20023

11110000
.
.

.
.

00001
00000

CS
BP
SP
SI
DI

MOV AX, A000H
MOV DS, AX
MOV BX, 0023H
MOV AH , [BX]

3-15

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
KẾT LUẬN
¾ Nếu chân A19 để trống thì việc đọc ơ nhớ 20023h khơng
khác gì đọc ơ nhớ A0023h
¾Một ơ nhớ chiếm 2 địa chỉ vật lý

3-16



DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Ví dụ 2 : Hệ vi xử lý gồm 2 khối nhớ 512KB
AX
BX
CX
DX
CS
SS
DS
ES

0023

A19
A18

Bộ nhớ gồm 2 khối nhớ 512K
A18

:

:

A0


A0

D7

D7

:

:

D0
A000

D0
RD

MEMR
MEMW

WR
CS

BP
SP

A18
:

A0


SI
DI

D7
:

D0
RD
WR
CS

7FFFF
7FFFE

.
.
.
.

20023

.
.
.
.

00001
00000
7FFFF

7FFFE

.
.
.
.

20023

.
.
.
.

00001
00000

3-17

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Điều gì xảy ra khi hệ vi xử lý đọc ô nhớ 20023h
AX
BX
CX
DX
CS
SS
DS

ES

0023

A19
A18
:

A18
:

A0

A0

D7

01010101 D7

:

D0
2000

Bộ nhớ gồm 2 khối nhớ 512K

MEMR
MEMW

BP

SP

:

D0
RD
WR
CS
A18
:

A0

SI
DI

11110000 D7
:

D0
RD

MOV AH , [BX]

WR
CS

7FFFF
7FFFE
20023


.
.
.
.

01010101
.
.
.
.

00001
00000
7FFFF
7FFFE
20023
00001
00000

.
.
.
.

11110000
.
.
.
.


3-18


DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
KẾT LUẬN :
¾ Nếu chân A19 để trống thì 2 chíp nhớ cùng hoạt động.
¾Nếu 8086 xuất 1 địa chỉ để đọc ơ nhớ thì cả 2 chíp nhớ
đều xuất số liệu ra cùng 1 lượt
Ỉ xung đột bus
Giải pháp :
Nếu A19 ở mức logic 1 thì chip trên hoạt động
Nếu A19 ở mức logic 0 thì chíp dưới hoạt động
Ỉ mạch giải mã
3-19

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Điều gì xảy ra khi hệ vi xử lý đọc ô nhớ 20023h
AX
BX
CX
DX

CS
SS
DS
ES

0023

A19
A18
:

A18
:

A0

A0

D7

D7

:

D0
2000

Bộ nhớ gồm 2 khối nhớ 512K

MEMR

MEMW

BP
SP
SI
DI

:

D0
RD
WR
CS
A18
:

A0

11110000 D7
:

D0
RD
WR

Mạch giải mã ngoài

CS

7FFFF

7FFFE
20023

FFFFF
.
.
.
.

01010101
.
.
.
.

00001
00000
7FFFF
7FFFE
20023
00001
00000

80000
7FFFF
.
.
.
.


11110000
.
.
.
.

00000
3-20


DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Không gian địa chỉ bộ nhớ
A19A18A17A16

A15A14A13A12

A11A10A9A8

A7A6A5A4

A3A2A1A0

00000h


0 0 0 0 0 0 0 0 0 0 00 0 0 00 0000

7FFFFh

0 1 1 1 1 1 1 1 1 1 11 1 1 11 1111

80000h

1 0 0 0 0 0 0 0 0 0 00 0 0 00 0000

FFFFFh

1 1 1 1 1 1 1 1 1 1 11 1 1 11 1111

3-21

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Thiết kế bộ nhớ cho hệ vi xử lý là ghép nối một số chíp
nhớ có sẵn vào Bus hệ thống của hệ vi xử lý đó sao cho
đảm bảo được dung lượng cần thiết và khơng có đụng độ
xảy ra
Thiết kế bộ nhớ thực chất là thiết kế mạch giải mã ngoài

3-22


DuyTan University


Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ

U1

Giới thiệu IC giải mã 74138
Để IC hoạt động thiết lập như sau :
1Ỉ G1
0ỈG2A
0Ỉ G2B
INPUT

1
2 A
3 B
C

OUTPUT

C

B

A

Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7


0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

0
1
1

1
1
1
1
1

1
0
1
1
1
1
1
1

1
1
0
1
1
1
1
1

1
1
1
0
1
1

1
1

1
1
1
1
0
1
1
1

1
1
1
1
1
0
1
1

1
1
1
1
1
1
0
1


1
1
1
1
1
1
1
0

6
4 G1
5 G2A
G2B

74LS138

Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7

15
14
13
12
11

10
9
7

3-23

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Bài toán : Hãy thiết kế bộ nhớ cho 8086 với các yêu cầu
sau :
Bộ nhớ gồm có SRAM và ROM
SRAM có dung lượng 2kX8 và có địa chỉ từ 00000h
ROM có dung lượng 2kX8 và có địa chỉ tiếp theo ngay sau
phần SRAM
Sử dụng các chip nhớ EPROM 2716 , SRAM 6216 ; các
cổng logic và chip giải mã 74138

3-24


DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Bước 1 : Vẽ bản đồ bộ nhớ


FFFFFh

2KB= 2048 byte = 211 byte
Ỉcần 11 bit địa chỉ

00FFFh

00000000000b Ỉ 11111111111b

EPROM
2Kx8

(000h Ỉ 7FFh)
00800h
007FFh

SRAM
2Kx8
00000h
3-25

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Bước 2 : Triển khai các địa chỉ biên từ HEX sang BIN
A19A18A17A16 A15A14A13A12 A11A10A9A8 A7A6A5A4 A3A2A1A0
00000h

007FFh
00800h


00FFFh

FFFFFh

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0
0 0 0 0

0 0 0 0
0 0 0 0

0 1 1 1
1 0 0 0

1 1 1 1
0 0 0 0

1 1 1 1
0 0 0 0


0 0 0 0

0 0 0 0

1 1 1 1

1 1 1 1

1 1 1 1

1 1 1 1

1 1 1 1

1 1 1 1

1 1 1 1

1 1 1 1

Nhận xét :

SRAM : A11 Ỉ A19 =0
EPROM : A12Ỉ A19 =0 ; A11 =1

3-26


DuyTan University


Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Bước 3 : Vẽ mạch giải mã ngồi
u cầu của mạch giải mã ngồi:

Các tín
hiệu địa chỉ
của A-Bus

Các tín hiệu
dùng làm tín
hiệu chọn
chíp cho các
chíp nhớ

MẠCH GIẢI
MÃ NGỒI

Các tín
hiệu điều
khiển của
C-Bus
3-27

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ

Vẽ mạch giải mã ngoài

D-BUS
A10-A0
A10-A0

A13
A12
A11
IO/M

A19
A18
A17
A16
A15
A14

C
B
A
74138

G1
G2
G3

Y0
Y1
Y2

Y3
Y4
Y5
Y6
Y7

CS

6116
2Kx8

OE
WE

A10-A0

D7-D0

A10-A0

CE

OE

2716
2Kx8

D7-D0

3-28



DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

THIẾT KẾ BỘ NHỚ
Bước 4 : Thử lại Đọc bộ nhớ SRAM tại địa chỉ 005E4h
D-BUS
005E4h = 0000.0000.0101.1110.0100b
A10-A0

A13 0
A12 0
A11 0
IO/M

A10-A0

C
B
A
74138

G1
G2

A19

A18
A17
A16
A15
A14

0
0
0
0
0
0

G3

Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7

0
1
1
1
1
1

1
1

CS

6116
2Kx8

OE
WE

A10-A0

D7-D0

A10-A0

CE

OE

2716
2Kx8

D7-D0

3-29

Nguyen Van Tho – Duy Tan University.


VÍ DỤ 2
Hãy thiết kế bộ nhớ cho 8086 với các yêu cầu sau :
Bộ nhớ 16KB gồm có SRAM và ROM
SRAM có dung lượng 8kX8 và có địa chỉ từ 00000h
ROM có dung lượng 8kX8 và có địa chỉ tiếp theo ngay sau
phần SRAM
Sử dụng các chip nhớ EPROM 2764 , SRAM 6264 ; các
cổng logic và chip giải mã 74138

3-30


DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

GIẢI
Bước 1 : Vẽ bản đồ bộ nhớ

FFFFFh

2KB= 2048 byte = 211 byte
Ỉcần 11 bit địa chỉ

03FFFh

00000000000b Ỉ 11111111111b


EPROM
8Kx8
2Kx8

(000h Æ 7FFh)
02000h
01FFFh

SRAM
2Kx8
8Kx8
00000h
3-31

Nguyen Van Tho – Duy Tan University.

GIẢI
Bước 2 : Triển khai các địa chỉ biên từ HEX sang BIN
A19A18A17A16 A15A14A13A12 A11A10A9A8 A7A6A5A4 A3A2A1A0
00000h

01FFFh
02000h

03FFFh

FFFFFh

0 0 0 0


0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0

0 0 0 0
0 0 0 0

0 0 0 1
0 0 1 0

1 1 1 1
0 0 0 0

1 1 1 1
0 0 0 0

1 1 1 1
0 0 0 0

0 0 0 0

0 0 1 1

1 1 1 1

1 1 1 1


1 1 1 1

1 1 1 1

1 1 1 1

1 1 1 1

1 1 1 1

1 1 1 1

Nhận xét :

SRAM : A13 Ỉ A19 =0
EPROM : A14Ỉ A19 =0 ; A13 =1

3-32


DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

GIẢI
Vẽ mạch giải mã ngoài


D-BUS
A12-A0
A12-A0

A15
A14
A13
IO/M

C
B
A
74138

G1
G2

A19
A18
A17
A16

G3

Y0
Y1
Y2
Y3
Y4
Y5

Y6
Y7

CS

6116
2Kx8

OE
WE

A12-A0

D7-D0

A12-A0

CE

OE

2716
2Kx8

D7-D0

3-33

Nguyen Van Tho – Duy Tan University.


THIẾT KẾ BỘ NHỚ
Thử lại

D-BUS
A12-A0
A12-A0

A15
A14
A13
IO/M

C
B
A
74138

G1
G2

A19
A18
A17
A16

G3

Y0
Y1
Y2

Y3
Y4
Y5
Y6
Y7

CS

6116
2Kx8

OE
WE

A12-A0

D7-D0

A12-A0

CE

OE

2716
2Kx8

D7-D0

3-34



DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.

VÍ DỤ 3
Hãy thiết kế bộ nhớ cho 8086 với các yêu cầu sau :
Bộ nhớ 1MB gồm có SRAM và ROM
ROM gồm có 2 phần, mỗi phần có dung lượng 128kX8 và
nằm ở phần đầu tiên và phần cuối cùng của bộ nhớ
SRAM có dung lượng 768kX8 và có địa chỉ nằm ở giữa 2
phần ROM
Sử dụng các chip nhớ EPROM 271024 (128Kx8) , SRAM
621024 ; các cổng logic và chip giải mã 74138

3-35

BẢN ĐỒ BỘ NHỚ
FFFFFh
E0000h
DFFFFh

Nguyen Van Tho – Duy Tan University.

2 khối ROM mỗi
khối 128K


C0000h
BFFFFh
A0000h
9FFFFh

6 khối RAM mỗi
khối 128K

80000h
7FFFFh

128Kx6 =768KB

60000h
5FFFFh
40000h
3FFFFh
20000h
1FFFFh
00000h

3-36


DuyTan University

Kỹ thuật Vi xử lý

Nguyen Van Tho – Duy Tan University.


A19A18A17A16 A15A14A13A12 A11A10A9A8 A7A6A5A4 A3A2A1A0
00000h
1FFFFh
20000h
3FFFFh
40000h
5FFFFh
60000h
7FFFFh
80000h
9FFFFh
A0000h
BFFFFh
C0000h
DFFFFh
E0000h
FFFFFh

0
0
0
0
0
0
0
0
1
1
1
1

1
1
1
1

0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
1
0
1

0
1
0
1
0
1
0
1
0
1
0
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1


0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
1
0
1
0
1
0
1
0
1
0
1
0

1
0
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
1
0
1
0
1
0
1
0

1
0
1
0
1
0
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
1
0
1
0

1
0
1
0
1
0
1
0
1
0
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0

1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
1
0
1
0
1
0
1
0
1

0
1
0
1
0
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
1
0
1
0
1

0
1
0
1
0
1
0
1
0
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
3-37
1




×