Các giải pháp bộ đồng xử lý mềm dẻo

Một phần của tài liệu Ứng dụng các DSP khả trình trong 3G.doc (Trang 42 - 48)

CHƯƠNG 3: CÁC DSP KHẢ TRÌNH CHO CÁC MODEM TRẠM GỐC 3G

3.4 Các giải pháp bộ đồng xử lý mềm dẻo

Khái niệm FCP dưới đây là để ghép giữa ý tưởng của việc tăng tốc độ phần cứng với ý tưởng tính mềm dẻo đáng kể của chức năng triển khai, có lẽ là tới bán lập trình.

Điều này bao gồm chiến lược phát triển được nhận thức tốt và các giao diện hiệu quả với DSP lõi, cả tại mức vật lý và các mức hoạt động cao hơn. Đối với kiến trúc trạm gốc 3G, một giải pháp rất đắc lực và hiệu quả về chi phí đã được đưa ra bằng việc thực hiện một DSP TMS320C64xTM với 3 FCP: Bộ giải mã Viterbi, bộ giải mã Turbo và CCP.

Những thành phần này được mô tả trong các phần dưới đây. Thêm vào đó, một bộ xử lý truyền thông DSP mới của Texas Instruments là TMS320C6416TM, kết hợp bộ giải mã Viterbi và bộ giải mã Turbo theo một hình thức ghép chặt với chính DSP.

3.4.1 Bộ đồng xử lý giải mã xoắn Viterbi

Một bộ giải mã Viterbi thường được sử dụng để giải mã các mã xoắn sử dụng trong các ứng dụng vô tuyến. Thuật toán này bao gồm hai bước: 1- tính toán trạng thái hoặc các ma trận hướng phát thông qua biểu đồ lưới của mã; 2- sử dụng các kết quả lưu trữ từ bước 1, thực hiện hướng ngược, nhờ số liệu này để xây dựng từ mã giống nhất với từ mã được phát (được hiểu là dò tìm). Việc tính toán ma trận trạng thái đòi hỏi tính toán dò tìm sâu hơn và chủ yếu bao gồm các toán tử cộng, so sánh và lựa chọn (ACS).

Một thao tác ACS quyết định giá trị tiếp theo của mỗi ma trận trạng thái trong biểu đồ lưới và thực hiện thao tác này bằng việc lựa chọn kết quả lớn nhất của hai ma trận thích hợp, một ma trận từ mỗi nhánh nhập vào trạng thái. Các ma trận thích hợp đến từ việc cộng ma trận nhánh tương ứng với ma trận trạng thái tương ứng trước đó. Các ma trận nhánh nhận được từ số liệu thu được sẽ được giải mã. Thêm vào đó, thao tác ASIC lưu trữ nhánh được chọn để sử dụng trong quá trình xử lý dò tìm.

Bé nhí TBk

Bé nhí I/O Khèi dß t×m Ph©n bè B.M

C¸c khèi ACS ph©n tÇng

Bé nhí S.M

§Þa chØ &

§iÒu khiÓn

CËp nhËt ma trËn tr¹ng th¸i

Giao diÖn DSP

Sè liÖu

§Þa chØ

Hình 3.2: Kiến trúc mức cao bộ đồng xử lý giải mã Viterbi

Kiến trúc mức trên của bộ đồng xử lý Viterbi mềm dẻo (VCP) được chỉ ra trong hình 3.2 và bao gồm ba khối chính: khối ma trận trạng thái, khối dò tìm và khối giao diện DSP. Khi hoạt động tại tần số 80 MHz (160 MHz cho bộ nhớ của nó), khối ma trận trạng thái có thể thực hiện 320x106 thao tác ACS trên giây, và VCP có thể giải mã tại tốc độ 2,5Mbps. Điều này là tương đương với trên 200 kênh thoại cho các hệ thống vô tuyến 3G.

Để hoàn thành điều này trong khi giảm băng thông bộ nhớ ma trận tới mức đủ hợp lý thì cấu trúc xếp tầng trong hình 3.3 được thực hiện. Thực tế, cấu trúc này hoạt động trên một cơ số 16 biểu đồ lưới con (16 trạng thái trên 4 tầng) và vì vậy bỏ quả I/O bộ nhớ cho 3 trong 4 tầng biểu đồ lưới dẫn đến giảm 75% băng thông. Đường số liệu này kết hợp một thanh ghi trao đổi duy nhất nhờ 4 bit đường biểu đồ lưới (được gọi là tiền dò tìm). Các đoạn 4 bit sẽ không cần dò tìm nhiều, chúng có thể được sử dụng như các phần trọn vẹn trong xử lý dò tìm. Điều này cho phép dò tìm nhanh hơn. Cấu trúc xếp tầng này cũng có thể hoạt động tại các chiều dài đã được giảm (giảm số lượng các tầng);

cụ thể là 3 tầng, 2 tầng, hoặc là 1 tầng. Tương tự như vậy trao đổi thanh ghi kết hợp tương ứng giống như trên sẽ đem lại các kết quả tiền dò tìm của cùng chiều dài bit.

ACS ACS ACS ACS

X-Switch

BM BM BM BM

Hình 3.3: Đường số liệu tầng cơ số 16 của tính toán ma trận trạng thái

Khối dò tìm hoạt động theo kiểu truyền thống để trở lại đường tắt. Điều này liên quan đến chu kỳ lặp của việc đọc bộ nhớ dò tìm để thu được đoạn từ yêu cầu, phản ánh các quyết định đường ưu tiên, dịch các đoạn từ này vào thanh ghi chỉ số trạng thái để định dạng chỉ số trạng thái tiếp theo cho dò tìm, và sử dụng số liệu này để định dạng địa chỉ bộ nhớ. Tuy nhiên, thiết kế của chúng ta có thể di chuyển ngược lại 4 tầng tại một thời điểm nhờ tiền dò tìm đã đề cập ở trên.

Tính mềm dẻo là một mục đích quan trọng trong thiết kế của VCP. Nó có thể hoạt động trên thanh ghi dịch đơn các mã xoắn với chiều dài K = 9, 8, 7, 6, 5; và các tỷ lệ mã 1/2, 1/3, và 1/4. Các đa thức xác định cho mã mong muốn được nhập vào. VCP cũng cho phép chích mẫu bất kỳ, có các phương pháp tham số hóa để nhân chia các khung cho dò tìm, vì vậy về cơ bản kích thước khung không phải là vấn đề quan trọng. Và khoảng các độ hội tụ có thể được chỉ ra cho các khung đã phân chia. Do đó, thực hiện VCP hầu như có thể giải mã được mã xoắn mong muốn bất kỳ tìm thấy trong các tiêu chuẩn vô tuyến 2G, 2,5G và 3G.

Thao tác hiệu quả với một DSP cũng có thể đạt được bởi bộ nhớ gắn với thiết bị, bằng việc cho phép các chuyển đổi số liệu khối tới đầu vào và/hoặc đầu ra đồng thời với

việc giải mã, và bằng việc cung cấp nhiều đường tín hiệu khác nhau cho sự đồng bộ DSP/DMA.

Bộ giải mã này rất nhỏ nhưng thông lượng rất cao nên nó hiệu quả về mặt chi phí hơn một phương pháp phần mềm. Điều này giải phóng DSP để xử lý nhiều kênh hơn và/hoặc thực hiện các thuật toán truyền thông tiến bộ hơn.

3.4.2 Bộ đồng xử lý giải mã turbo

Các bộ mã hóa turbo được sử dụng trong cả hai tiêu chuẩn vô tuyến 3GPP và IS- 2000. Các bộ mã hóa turbo được biểu diễn trong hình 3.4 có thể nhận được hiệu suất BER=10-6 tại SNR=1,5dB. Bộ mã hóa turbo bao gồm hai bộ mã hóa xoắn hệ thống đệ quy (RSCC) được mắc song song, kết hợp với bộ đan xen như chỉ ra trong hình 3.4.

GhÐp kªnh RSCC tèc

®é 1/3

RSCC tèc

®é 1/3 Bé ®an xen

C¸c bit th«ng tin

Tíi kªnh

Hình 3.4: Bộ mã hóa Turbo

Các bit thông tin được gửi đến cả hai RSCC. Các bit thông tin qua RSCC bên dưới được đan xen trước khi đến bộ mã hóa. Đầu ra của cả hai RSCC là 3 bit, được kết hợp nối tiếp và sau đó được truyền trên kênh. Bit theo phương pháp đan xen từ RSCC dưới không được truyền bởi vì nó là dư. Điều này cho phép 5 bit được chích ra để thực hiện một tỷ lệ mã: 1/4, 1/3, hay 1/2.

Bộ giải mã turbo là một bộ giải mã lặp sử dụng thuật toán MAP (Maximum A Posteriory)[1]. Mỗi phép lặp của bộ giải mã thực hiện bộ giải mã MAP hai lần. Bộ giải mã MAP thứ nhất sử dụng số liệu không đan xen và bộ giải mã MAP thứ hai sử dụng số liệu đan xen. Trong mỗi phép lặp, mỗi bộ giải mã MAP cấp cho các bộ giải mã MAP khác một tập hợp mới các ước tính ưu tiên của các bit thông tin, thông thường được gọi là các tác động từ bên ngoài vào. Trong cách này hai bộ giải mã MAP có thể hội tụ tới một giải pháp.

Số liệu thu được từ kênh cần thiết được chia tỷ lệ trước bởi 2 /σ2 (trong đó σ2 là sự thay đổi tạp âm tín hiệu) sử dụng bởi các bộ giải mã MAP. Việc chia tỷ lệ này được thực hiện bởi DSP.

Kiến trúc TCP cơ bản được biểu diễn trong hình 3.5. Điều khiển mềm dẻo cho phép TCP được cấu hình để làm việc trong một vài chế độ. Trong chế độ đơn giản nhất,

DSP tải toàn bộ một khối số liệu giữa các giải mã MAP và nó thực hiện một giải mã MAP trên số liệu. Các kết quả được gửi trở lại DSP. Điều này có nghĩa là DSP sẽ đan xen số liệu giữa các giải mã MAP và vì vậy liên quan đến mọi phép lặp của giải mã turbo. Các bộ chuyển đổi số liệu được điều khiển một cách hiệu quả bởi sự tự động trong khối DMA tăng cường (EDMA) của DSP.

EDMA

I/F Bé nhí §iÒu khiÓnMAP Bé gi¶i m·MAP

§iÒu khiÓn TCP Khèi giao

diÖn chñ EDMA C64X

lâi

Hình 3.5: Kiến trúc bộ đồng xử lý Turbo

Chế độ hoạt động đặc biệt này cho phép TCP hoạt động trên nhiều loại mã hơn trong 3G, miễn là chúng sử dụng cùng các RSCC thành phần.

TCP cũng có thể được thiết lập để thực hiện một vài phép lặp không cần sự can thiệp của DSP. Điều này giảm rất nhiều băng thông bus yêu cầu vì các kết quả trung gian không cần di chuyển vào và ra. Trong chế độ này, TCP sử dụng một bảng tra cứu để thực hiện đan xen và vì vậy có thể thực hiện đủ số phép lặp như yêu cầu để hội tụ.

Bộ điều khiển TCP phụ trách việc ghi đối xứng, chẵn/lẻ, và độ ưu tiên của số liệu một cách chính xác tới bộ giải mã MAP. Sau khi giải mã thành công, DSP sẽ thu được số liệu đã hiệu chỉnh, thông thường qua EDMA.

Để tối thiểu sự tiêu thụ công suất, thông thường người ta sử dụng một tiêu chuẩn dừng, đó là một chức năng của các đầu ra bộ giải mã MAP và được sử dụng để quyết định khi nào sự hội tụ xuất hiện. Tiêu chuẩn dừng chỉ ra rằng mặc dù cần tối đa 8-10 phép lặp nhưng để đạt được hiệu suất tốt nhất của giải mã turbo, trong hầu hết thời gian, chỉ 3- 4 phép lặp là cần thiết cho sự hội tụ. Vì vậy, một tiêu chuẩn dừng có thể có một tác động quan trọng trên các yêu cầu MIPs trung bình và mức công suất trung bình. TCP có một tiêu chuẩn dừng riêng để sử dụng trong chế độ đa tiêu chuẩn. Tất nhiên, trong chế độ giải mã MAP đơn, DSP là tự do để áp dụng tiêu chuẩn dừng bất kỳ.

Đối với các kích thước khối rất lớn (trong IS-2000 khối turbo có thể rộng 20Kbits), bộ giải mã turbo có thể thực hiện một giải mã MAP một phần sử dụng kỹ thuật cửa sổ

trượt. Trong trường hợp này EDMA cung cấp cho TCP số liệu, chẵn lẻ và độ ưu tiên cho một phần của khối số liệu (từ mã) để thực hiện một phần của một giải mã MAP.

Chức năng giải mã MAP được biểu diễn trong hình 3.6. Bộ điều khiển MAP có thể cấu hình khối này, để thực hiện các cập nhật alpha và beta cũng như cập nhật đầu ra từ khối ngoại vi. Khi sử dụng trong các bộ giải mã turbo, việc tính toán beta lặp được thực hiện đầu tiên và khi đó việc tính toán alpha lặp được thực hiện đồng thời, đầu ra ngoại vi được thực hiện sử dụng đầu ra alpha sau cùng như các beta thu được trước đó. Vì vậy, chúng ta cần lưa trữ beta nhưng không lưu trữ alpha. Một kiến trúc đường ống cho phép bốn khối beta được tạo ra đồng thời với bốn khối alpha và bốn khối đầu ra. Bằng kỹ thuật này có thể thu được tối đa lợi thế của tốc độ kênh.

Thiết kế sau cùng có thể xử lý 16 kênh tại 384Kbps. Mặc dù khả năng này lớn hơn dung lượng của hầu hết trạm gốc nhưng nó cho phép giải mã turbo xảy ra với độ trễ thấp, là một yêu cầu mong đợi trong tất cả hệ thống.

Ma trËn tr¹ng th¸i RAM

Khèi bªn ngoµi Khèi Beta

Khèi Alpha Wn i,

Hình 3.6: Kiến trúc bộ giải mã MAP 3.4.3 Bộ đồng xử lý tương quan

CCP là một khối tương quan dựa trên vectơ, tính mềm dẻo cao, khả trình, thực hiện các thao tác bộ thu RAKE trạm gốc CDMA cho đa kênh. Bởi vì hầu hết các chức năng bộ thu RAKE liên quan tới sự tương quan và tích lũy, bất chấp giao thức vô tuyến nào, một khối tương quan chung cũng có thể được sử dụng cho một số nhiệm vụ của bộ thu RAKE như giải trải phổ hướng và tìm kiếm. Mặc dù, chúng dựa trên cùng kiến trúc trải phổ nhưng các nhiệm vụ định hướng và các nhiệm vụ tìm kiếm được xử lý trên các máy vật lý riêng rẽ.

Thêm vào đó, để thực hiện các chức năng giải trải phổ (giá trị phức), bao gồm nhân chuỗi mã và tích lũy kết hợp, CCP cũng tích lũy các giá trị năng lượng “ký hiệu”

(được gọi là các tích lũy không kết hợp). Ví dụ, nó tích lũy các mẫu sớm, đúng lúc và muộn của một hướng của RAKE; các phép đo này được sử dụng cho vòng lặp dò tìm mã của hướng (thường là một DLL). Đối với các thao tác tìm kiếm, CCP trả lại các giá trị năng lượng tích lũy cho một cửa sổ riêng của các khoảng dịch (offsets).

CCP thực hiện tất cả các xử lý CR và các tích lũy năng lượng theo các thao tác mà DSP đã ghi vào các bộ đệm thao tác của CCP dùng để điều khiển tất cả các thao tác CCP. CCP không thực hiện các hoạt động bộ thu SR như AGC, AFC và DLL (Với DLL thì CCP cung cấp các giá trị năng lượng cho vòng lặp hồi tiếp, nhưng nó không hoạt động trên vòng lặp của chính nó). Tất cả các thao tác ký hiệu này được thực hiện trên một DSP TMS320C64xTM. Phiên bản đầu tiên của DSP được xây dựng để hỗ trợ tiêu chuẩn 3G IS-2000 nhưng sẽ được tăng cường để hỗ trợ tất cả các tiêu chuẩn 3G tương lai.

Hình 3.7 biểu diễn một ví dụ triển khai, sử dụng CCP và biểu diễn cách CCP có thể được giao diện với các thành phần khác của chuỗi thu của một cấu hình phần cứng băng gốc số (DBB).

C¸c b¶ng vµ thanh ghi cÊu h×nh Bé ®Öm thao t¸c

Bé ®Öm ký hiÖu kÕt hîp

Bé ®iÒu khiÓn §­êng sè liÖu Bé kÕt hîp 1&2 RC

C¸c b¶ng vµ thanh ghi cÊu

h×nh Bé ®Öm thao t¸c Bé ®Öm EOL Bé ®iÒu khiÓn

§­êng sè liÖu

§­êng sè liÖu RAKE

C¸c thanh ghi tr¹ng th¸i Bé ®Öm ký hiÖu

Finger Bé ®Öm ký hiÖu

hoa tiªu Raw

C¸c b¶ng vµ thanh ghi cÊu h×nh Bé ®Öm thao t¸c Bé ®iÒu khiÓn

§­êng sè liÖu

§­êng sè liÖu t×m kiÕm

C¸c thanh ghi tr¹ng th¸i Bé ®Öm t×m kiÕm

®Öm

®Çu vµo

Giao diÖn ng¾t Host

C¸c thanh ghi tr¹ng th¸i chung C¸c thanh ghi cÊu h×nh chung

CCP

Tèc ®é chip ®­êng lªn Thu ASIC

C¸c mÉu I&Q tõ

A/D cho nhiÒu

anten Bus 16, 32 hc 64 bit EMIF_A hc EMIF_B

DSP

Hình 3.7: Ví dụ của việc thực hiện sử dụng CCP CCP chịu trách nhiệm:

• Việc thực hiện giải trải phổ để cung cấp các ký hiệu số liệu trên mỗi hướng tới thực thể phụ trách việc xử lý MRC (có thể trực tiếp bởi DSP hay khối con ASIC khác).

• Thực hiện các phép đo năng lượng/IQ sớm/đúng lúc/muộn (EOL) cho DLL.

• Thực hiện các tương quan trên chip và 1/2 chip, các phép đo năng lượng/IQ dành cho mục đích tìm kiếm.

• Cung cấp các ký hiệu hoa tiêu gốc trên mỗi hướng cho DSP.

Trong RC IS-2000 1&2, đường số liệu FHT truy nhập trực tiếp bộ đệm ký hiệu hướng (bộ đệm đầu ra của đường số liệu RAKE) và thực hiện việc kết hợp. Các đầu ra của bộ kết hợp được ghi vào bộ đệm ký hiệu kết hợp (CSB). DSP truy nhập trực tiếp bộ đệm đầu ra đó để nhận các ký hiệu đã kết hợp.

Trong RC 3&4, DSP sử dụng các ký hiệu hoa tiêu gốc đã tính toán để thực hiện sự ước tính kênh của mỗi hướng. Các hệ số của phép ước tính kênh khi đó sẽ được gửi tới thực thể phụ trách việc xử lý MRC. Trong ví dụ cụ thể này, xử lý MRC được thực hiện trong phần mềm, nhưng nó cũng có thể được xử lý bởi các khối con phần cứng khác. Sử dụng các hệ số đã tính toán đó, MRC nhân các ký hiệu giải trải phổ với các hệ số ước tính kênh và khi đó cộng tổng các ký hiệu đến từ một vài hướng (đường) với nhau để cung cấp các ký hiệu kết hợp. Khi đó các ký hiệu kết hợp này sẽ được xử lý bởi các tầng xử lý ký hiệu cao hơn trong bộ thu trạm gốc.

Một phần của tài liệu Ứng dụng các DSP khả trình trong 3G.doc (Trang 42 - 48)

Tải bản đầy đủ (DOC)

(96 trang)
w