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.
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.
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.