Bộ nhớ của core DSP56300 được chia thành các phần: bộ nhớ chương trình, bộ nhớ dữ liệu X, bộ nhớ dữ liệu Y, hai không gian nhớ X, Y này làm việc với 2 bộ ALU địa chỉ và cung cấp 2 toán hạng đồng thời tới bộ ALU dữ liệu.
phần mềm điều khiển. RAM Chương trình Đệm lệnh RAM dữ liệu X RAM dữ liệu Y Đệm lệnh Chuyển mode M1 M0
16Kx24-bit 0 24Kx24-bit 24Kx24-bit Disabled Disabled 0/1 0/1
15Kx24-bit 1024x24-bit 24Kx24-bit 24Kx24-bit Enabled Disabled 0/1 0/1
48Kx24-bit 0 8Kx24-bit 8Kx24-bit Disabled Enabled 0 0
47Kx24-bit 1024x24-bit 8Kx24-bit 8Kx24-bit Enabled Enabled 0 0
40Kx24-bit 0 12Kx24-bit 12Kx24-bit Disabled Enabled 0 1
39Kx24-bit 1024x24-bit 12Kx24-bit 12Kx24-bit Enabled Enabled 0 1
32Kx24-bit 0 16Kx24-bit 16Kx24-bit Disabled Enabled 1 0
31Kx24-bit 1024x24-bit 16Kx24-bit 16Kx24-bit Enabled Enabled 1 0
24Kx24-bit 0 20Kx24-bit 20Kx24-bit Disabled Enabled 1 1
23Kx24-bit 1024x24-bit 20Kx24-bit 20Kx24-bit Enabled Enabled 1 1
Bảng 2. Không gian nhớ trên On-chip 6.2.7 Bộ nhớ mở rộng off-chip
Bộ nhớ được mở rộng trên off-chip với các dung lượng:
- Bộ nhớ dữ liệu mở rộng tới 2 không gian nhớ 16M x 24-bit word trong mode địa chỉ 24-bit (16K trong mode địa chỉ 16-bit).
- Bộ nhớ chương trình mở rộng tới 2 không gian nhớ 16M x 24-bit word trong mode địa chỉ 24-bit (16K trong mode địa chỉ 16-bit).
Hơn thế không gian nhớ off-chip còn gồm: - Cổng mở rộng bộ nhớ ngoài.
- Các giao diện không gắn kết đồng thời tới SRAM và DRAM.
6.2.8 Các đường bus trong
DSP56307 thực hiện trao đổi dữ liệu giữa các khối thông qua các đường bus sau: - Bus mở rộng vào/ra ngoại vi tới thiết bị ngoại vi.
- Bus mở rộng bộ nhớ chương trình tới bộ nhớ ROM chương trình. - Bus mở rộng bộ nhớ X tới bộ nhớ X.
- Bus mở rộng bộ nhớ Y tới bộ nhớ Y.
- Bus dữ tổng thể giữa CPU và các cấu trúc lõi khác.
- Bus dữ liệu chương trình chuyển dữ liệu chương trình thông qua lõi. - Bus dữ liệu bộ nhớ X cho phép chuyển dữ liệu bộ nhớ X thông qua lõi. - Bus dữ liệu bộ nhớ Y cho phép chuyển dữ liệu bộ nhớ Y thông qua lõi. - Bus địa chỉ chương trình chuyển địa chỉ nhớ chương trình qua lõi
- Bus địa chỉ bộ nhớ X cho phép chuyển địa chỉ bộ nhớ X thông qua lõi. - Bus địa chỉ bộ nhớ Y cho phép chuyển địa chỉ bộ nhớ Y thông qua lõi.
Hình 22. Sơ đồ khối DSP56307
6.4 DMA
Khối DMA có các tính năng sau:
- 6 kênh DMA hỗ trợ truy cập ngoài và trong. - Truyền 1, 2 , 3 chiều.
- Các ngắt truyền ở cuối của khối.
- Sườn kích hoạt từ các ngắt và thiết bị ngoại vi.
6.5 Cấu trúc
DSP56307 được thiết kế thực hiện các chức năng xử lý tín hiệu số. Core DSP56307 cung cấp các ngoại vi sau:
- HI08 tới các host ngoài.
- 2 kênh giao diện nối tiếp đồng bộ tăng cường (ESSI). - Giao diện SCI.
- Module định thời. - Mode chuyển bộ nhớ.
- 4 đường ngắt ngoài/ các đường điều khiển mode
6.5.1 Chức năng của GPIO
Cổng GPIO bao gồm 34 đường tín hiệu có thể lập trình. Tất cả được cũng được sử dụng bởi ngoại vi (HI08, ESSI, SCI, module định thời). Sau khi khởi động các chân tín hiệu tự động được cấu hình là các đường vào /ra đa chức năng GPIO. Có 3 thanh ghi được ánh xạ tới bộ nhớ trên mỗi ngoại vi điều khiển chức năng của GPIO.
6.5.2 Giao diện HI08
Có độ rộng 1 byte, song công, đệm kép. Cổng song song này có khả năng nối trực tiếp tới bus dữ liệu của một bộ xử lý host. HI08 hỗ trợ kết nối bus biến đổi linh hoạt cho phép kết nối với các thiết bị xử lý số cônng nghiệp, vi xử lý, và máy vi tính mà không cần bất kỳ điều kiện logic nào. Core DSP xem HI08 như một ngoại vi được ánh xạ lên bộ nhớ chiếm 8 từ 24-bit trong bộ nhớ dữ liệu. DSP có thể sử dụng cổng HI08 như một ngoại vi được ánh xạ lên bộ nhớ sử dụng kỹ thuật lập trình ngắt hoặc dò chuẩn. Chia các thanh ghi dữ liệu truyền và nhận được đệm kép cho phép DSP và bộ sử lý Host thực hiện truyền dữ liệu hiệu quả ở tốc độ cao. Bộ nhớ ánh xạ cho phép lập trình truyền thông core DSP với các thanh ghi của cổng HI08 bằng cách sử dụng các câu lệnh chuẩn và mode địa chỉ.
Thanh ghi điều khiển cổng (HPCR)
HPCR là thanh ghi đọc/ghi 16 bit dùng để DSP điều khiển chế độ hoạt động của HI08. Các bit không sử dụng được đọc và ghi giá trị 0.
Bit 0 (HGEN): Khi bit HGEN được đặt tín hiệu được cấu hình trong chế độ GPIO, khi bit này xoá sẽ thoát khỏi chế độ GPIO, các đầu ra ở trạng thái trở kháng cao, các đầu vào bị ngắt.
Bit 6 (HEN): Khi bit này được đặt HI08 hoạt động trong chế độ giao diện chủ. Nếu xoá về 0 các chân HI08 hoạt động như các chân GPIO tuỳ theo giá trị trong thanh ghi HDDR và HDR.
Thanh ghi hướng dữ liệu (HDDR):
Thanh ghi HDDR điều khiển hướng truyên của dữ liệu trong chế độ GPIO. Nếu bit DRxx được đặt các chân tương ứng của HI08 là chân ra, khi xoá bit thì các chân tương ứng là chân vào.
Thanh ghi dữ liệu (HDR):
Thanh ghi HDR lưu trữ giữ liệu tương ứng với các chân HI08 khi hoạt động trong chế độ GPIO. Chức năng của các bit Dxx phụ thuộc vào các bit tương ứng trong thanh ghi HDDR.
6.5.3 Giao diện ESSI
DSP56307 cung cấp 2 giao diện truyền thông nối tiếp đồng bộ, song công. Tương thích với các thiết nối tiếp bao gồm một hoặc nhiều codec chuẩn công nghiệp, các bộ vi xử lý, máy vi tính,
ESSI bao gồm phần truyền nhận độc lập , khối phát xung nhịp chung. ESSI gồm các khả năng sau:
- Độc lập (bất đồng bộ) hoặc chia sẽ (đồng bộ) các phần truyền và nhận với chia hoặc chia sẽ xung nhịp trong/ngoài và đồng bộ khung.
- Hoạt động ở mode thông thường là đồng bộ khung. - Hoạt động ở mode mạng với 32 khe thời gian.
- Chiều dài của từ có khả năng lập trình (8-bit, 12-bit và 16-bit). - Các tuỳ chọn chương trình cho đồng bộ khung và phát xung nhịp. - Một bộ nhận và ba bộ truyền trên mỗi ESSI.
6.5.4 Giao diện SCI
DSP56307 cung cấp một giao diện SCI song công cho phép trao đổi thông tin nối tiếp với các thiết bị xử lý số, vi xử lý như modem. Giao diện SCI không cần thêm logic ngoại vi. Với khối lượng nhỏ các mạch logic cộng thêm, SCI có thể nối với các ngoại vi khác không có mức tín hiệu chuẩn như RS-232C, RS-422. Giao diện này sử dụng 3 tín hiệu được chỉ ra: dữ liệu truyền, dữ liệu nhận, và xung nhịp nối tiếp SCI. Nó hỗ trợ tốc độ bit đồng bộ chuẩn công nghiệp và các giao thức như truyền dữ liệu đồng bộ tốc độ cao (lên tới 1.5Mbps với xung nhịp 100MHz)
6.5.5 Module định thời
Bao gồm 1 bộ chia chung 21-bit, và 3 bộ đếm sự kiện 24-bit đa năng xác định, mỗi bộ đếm có một tập các thanh ghi được ánh xạ lên bộ nhớ. Mỗi bộ định thời có một tín hiệu đơn, có chức năng như tín hiệu GPIO hoặc là một tín hiệu định thời. Mỗi bộ định thời có thể sử dụng xung nhịp trong hoặc ngoài có thể ngắt DSP sau khi xác định số sự kiện hoặc tín hiệu một thiết bị ngoài sau khi đếm các sự kiện trong. Mỗi bộ định thời kết nối với bên ngoài thông qua một đường tín hiệu nhị phân. Khi đó tín hiệu này được cấu hình như là một ngắt, bộ định thời này có thể đóng vai trò là một bộ đếm sự kiện ngoài hoặc đo độ rộng xung/ chu kỳ tín hiệu. Khi là tín hiệu được sử dụng như một đầu ra, bộ định thời có chức năng như kích xung, điều chế độ rộng xung...
Hình 23. Sơ đồ khối EFCOP
EFCOP là một khối ngoại vi giao tiếp với DSP thông qua module bus ngoại vi. EFCOP là bộ đồng xử lý đầy đủ đa chức năng có khả năng lập trình được thiết kế để thực hiện các nhiệm vụ lọc đồng thời với nhân DSP. Nhân DSP và EFCOP có thể chia sẽ bộ dữ liệu nhớ dữ liệu. Các kênh DMA luân chuyển là dữ liệu vào/ra giữa nhân DSP và EFCOP.
EFCOP hỗ trợ các mode lọc khác nhau dựa trên các ứng dụng cụ thể: - Bộ lọc đáp ứng xung hữu hạn thực với các tap thực.
- Bộ lọc đáp ứng xung hữu hạn phức với các tap phức.
- Bộ lọc đáp ứng xung hữu hạn phức phát ở đầu ra lọc thực và phức luân phiên.
- Một hệ số 10 4-bit (hệ số tỉ lệ lên đến 1 – 16) trong các bộ lọc FIR. - Bộ lọc đáp ứng xung vô hạn trực tiếp dạng I.
- Bộ lọc đáp ứng xung vô hạn trực tiếp dạng II.
- Bộ lọc thích nghi FIR với hệ số thực bình phương tối thiểu được cập nhật. - Bộ lọc thích nghi FIR với hệ số trễ bình phương tối thiểu được cập nhật. EFCOP hỗ trợ tới 4K taps và 4K hệ số trong một số liên kết của số và chiều dài bộ lọc. Có thể thực hiện chính xác các thuật toán 24-bit hoặc 16-bit
6.6.1 Các thanh ghi của EFCOP
Địa chỉ Tên thanh ghi EFCOP
$FFFFB0 Thanh ghi dữ liệu vào (FDIR) $FFFFB1 Thanh ghi dữ liệu ra (FDOR) $FFFFB2 Thanh ghi hằng số K (FKIR) $FFFFB3 Thanh ghi đếm (FCNT)
$FFFFB4 Thanh ghi điều khiển trạng thái (FCSR) $FFFFB5 Thanh ghi điều khiển ALU (FACR) $FFFFB6 Địa chỉ cơ sở bộ đệm dữ liệu (FDBA) $FFFFB7 Địa chỉ cơ sở hệ số bộ lọc (FCBA) $FFFFB8 Thanh ghi chiều/kênh lọc (FDCH) Bảng 3. Địa chỉ cơ sở của các thanh ghi EFCOP Thanh ghi dữ liệu vào (FDIR)
FDIR là thanh ghi FIFO 4 từ 24 bit dùng để truyền dữ liệu từ DSP tới EFCOP. Nhiều nhất 4 mẫu có thể được viết vào FDIR với cùng một địa chỉ. Dữ liệu từ FDIR được truyền tới FDM để xử lý lọc. Khi hoạt động dữ liêu chỉ được viết vào FDIR khi bit trạng thái FDIBE được đặt. Dữ liệu truyền đi có thể được khởi động bằng yêu cầu ngắt hoặc yêu cầu DMA. Cả nhân DSP56307 và điều khiển DMA đều lấy thông tin từ FDIR để ghi.
Thanh ghi dữ liệu ra (FDOR)
FDOR là thanh ghi chỉ đọc 24 bít để truyền dữ liệu từ EFCOP tới DSP. Kết quả xử lý lọc được chuyển từ FMAC tới FDOR. Khi hoạt động chỉ đọc dữ liệu từ FDOR khi bít trạng thái FDOBF được đặt điều đó chỉ ra rằng thanh ghi FDOR đã chứa dữ liệu. Khi đọc xong dữ liệu từ FDOR thì bít FDOBF được xoá. Dữ liệu truyền đi có
thể khởi động bằng yêu cầu ngắt hoặc yêu cầu DMA. Thanh ghi FDOR được đọc thông tin từ nhân DSP56307 hoặc điều khiển DMA.
Thanh ghi hằng số K (FKIR)
FKIR là thanh ghi chỉ đọc 24 bít để chuyển hằng số từ DSP tới EFCOP. Các hằng số lọc được viết vào FKIR trước khi xử lý loại bỏ tiếng vọng và được chuyển tới bộ cộng FMAC. Chỉ có nhân DSP56300 mới có thể lấy thông tin từ FKIR để đọc hoặc ghi.
Thanh ghi đếm (FCNT)
Thanh ghi FCNT là thanh ghi đọc viết 24 bít dùng để chọn độ dài của bộ lọc. Số đếm ban đầu luôn luôn được viết vào thanh ghi FCNT trước khi cho phép EFCOP (đặt bít FEN-bít 0 của FCSR). Không được thay đổi nôi dung của thanh ghi FCNT trừ khi EFCOP ở trạng thái reset (FEN=0). Ở trạng thái reset, môđun EFCOP không hoạt động nhưng nội dung của thanh ghi FCNT được giữ nguyên.
Bít Tên bít Giá trị Chức năng
23-12 - Các bít này được bảo toàn và điền giá trị 0
11-0 FCNT Đếm
- Các bít này có giá trị là số lượng các hệ số trừ 1 Bảng 4. Các bit của thanh ghi FCNT
Thanh ghi điều khiển trạng thái EFCOP (FCSR)
FCSR là thanh ghi đọc viết 24 bit dùng để nhân DSP56307 điều khiển chế độ hoạt động của EFCOP và quan sát trạng thái EFCOP. Tất cả các bit FCSR đều được xoá sau khi reset cả bằng phần cứng và phần mềm. Để đảm bảo hoạt động đúng không được thay đổi các bit FCSR trừ khi EFCOP ở trạng thái reset (FEN=0) ngoại trừ FEN, FDIOE, FDIIE, FUPD và FADP.
Bit Tên bit Giá trị Chức năng
23-16 - Các bít này được bảo toàn và điền giá trị 0
15 FDOBF Bộ đệm dữ liệu ra đầy-bít trạng thái
0 FDOR rỗng
DSP hoặc DMA
14 FDIBE Bộ đệm dữ liệu vào đầy-bít trạng thái
0 FDIR đầy
1 FDIR rỗng và sẵn sàng được ghi dữ liệu bởi nhân DSP hoặc DMA
13 FCONT Xảy ra tranh chấp-bít trạng thái
0 Không xảy ra tranh chấp bộ nhớ
1 Xảy ra tranh chấp bộ nhớ giữa nhân DSP và EFCOP
12 FSAT Trạng thái bão hoà-bít trạng thái
0 Không xảy ra tràn trên hoặc tràn dưới 1 Xảy ra tràn trên hoặc tràn dưới
11 FDOIE Cho phép ngắt dữ liệu ra
0 Cấm ngắt
1 Cho phép ngắt
10 FDIIE Cho phép ngắt dữ liệu vào
0 Cấm ngắt
1 Cho phép ngắt
9 - Các bít này được bảo toàn và điền giá trị 0
8 FSCO Chế độ chia sẻ các hệ số-Chỉ có hiệu lực trong chế độ đa kênh
0 Các hệ số liên tiếp 1 Các hệ số được chia sẻ
7 FPRC Chế độ xử lý trạng thái khởi tạo-Chỉ có hiệu lực với bộ lọc FIR
0 Cho phép khởi tạo 1 Cấm khởi tạo
6 FMLC Chế độ lọc đa kênh
0 Cấm chế độ lọc đa kênh 1 Cho phép lọc đa kênh
5-4 FOM Chế độ hoạt động-Chỉ có hiệu lực với bộ lọc
FIR (bít FLT trong FCSR=0) 00 Chế độ 0: bộ lọc FIR thực
01 Chế độ 1: bộ lọc FIR phức
10 Chế độ 2: bộ lọc FIR phức với phần thực thay đổi, lối ra là phần ảo
11 Chế độ 3: Độ lớn
3 FUPD Cập nhật bộ lọc-chỉ có hiệu lực với bộ lọc FIR (bít FLT trong FCSR=0), tự động xoá bởi EFCOP và tự động đặt trong chế độ thích nghi (bít FADP trong FCSR=1)
0 Cập nhật hệ số hoàn toàn 1 Cập nhật hệ số ban đầu
2 FADP Chế độ lọc thích nghi-chỉ có hiệu lực với bộ lọc FIR (bít FLT trong FCSR=0) 0 Cấm chế độ lọc thích nghi 1 Cho phép chế độ lọc thích nghi 1 FLT Loại bộ lọc 0 Bộ lọc FIR 1 Bộ lọc IIR 0 FEN Cho phép bộ lọc
0 EFCOP cấm và trong trạng thái reset
1 Cho phép EFCOP
Bảng 5. Chức năng của các bit trên FCSR Thanh ghi điều khiển ALU (FACR)
FACR là thanh ghi đọc/ghi 24 bit. Nhân DSP56307 điều khiển chế độ hoạt động chính của đơn vị logic số học (ALU). Tất cả các bit FACR đều được xoá sau khi reset bằng phần cứng hoặc phần mềm.
Bit Tên bit Giá trị Chức năng
23-7 - Các bit này được bảo toàn và điền giá trị 0
6 FISL Tỉ lệ dữ liệu vào-trong mỗi trường hợp tỉ lệ được quyết định bởi bít FSCL[1:0] trong FCSR
IIR
1 Chỉ chia tỉ lệ bộ phản hồi IIR
5 FSA Chế độ số học 16 bit
0 Cấm chế độ số học 16 bit 1 Cho phép chế độ số học 16 bit
4 FSM Chế độ bão hoà
0 Cấm chế độ bão hoà 1 Cho phép chế độ bão hoà
3-2 FRM Chế độ làm tròn 00 Làm tròn hội tụ 01 Làm tròn bù hai 10 Cắt số (không làm tròn) 11 Bảo toàn 1-0 FSCL Hệ số tỉ lệ 00 Nhân tỉ lệ=1
01 Nhân tỉ lệ=8 (dịch trái 3 bit) 10 Nhân tỉ lệ=16 (dịch trái 4 bit) 11 Bảo toàn
Bảng 6. Chức năng của các bit trên FACR Địa chỉ cơ sở của dữ liệu (FDBA)
FDBA là thanh ghi đếm đọc ghi 16 bit được sử dụng như con trỏ địa chỉ để trỏ