ThiÕt kÕ hÖ thèng ghi ©m sè
Lời nói đầu
Ngày nay cùng với sự phát triển mạnh mẽ của khoa học kỹ thuật, vai trò
của kỹ thuật số, kỹ thuật máy tính ngày càng trở nên to lớn. Nó xâm nhập vào
mọi lãnh vực của đời sống xã hội. Nó thúc đẩy tự động hoá sản xuất, cũng như
các sinh hoạt của con người.
Trong khuôn khổ của một đề tài thực tập, dựa trên các nhu cầu thực tế,
với nhiệm vụ thiết kế hệ thống ghi âm số điện thoại 8 kênh tự động, em đã tham
khảo các mô hình đã có, đưa ra một số phương án khả thi. Phương án tối ưu
nhất được thiết kế sơ đồ khối, sơ đồ ghép nối và các môdule phần mềm.
Trong quá trình thực tập em cũng học được nhiều kiến thức và kinh
nghiệm mới, tuy nhiên do trình độ còn hạn hẹp, ít kinh nghiệm nên đề tài còn
nhiều thiếu sót.
Em xin chân thành cảm ơn thầy Bùi Quốc Anh đã luôn tận tình hướng dẫn
em trong quá trình hoàn thành đợt thực tập này.
1 1
ThiÕt kÕ hÖ thèng ghi ©m sè
I.Nhiệm vụ
Hệ thống ghi âm số cần thực hiện những nhiệm vụ sau:
- Thu tín hiệu thoại đồng thời trực tiếp từ 8 kênh thoại
- Mã hoá thành tín hiệu số
- Tổ chức lưu trữ
- Playback
Phần cứng của hệ thống gồm
- Mạch thu và chuyển đổi tín hiệu tiếng nói
- Khối điều khiển
- Lưu trữ
- Playback(Sound card)
Phần mềm bao gồm
- Chương trình điều khiển thu tín hiệu thoại
cuộc thoại phải được lưu trữ trong một thời gian nhất định(1,2 năm) nên tiết bị
lưu trữ cần có dung lượng đủ lớn.
Phát lại các cuộc thoại diễn ra đồng thời với việc ghi âm. Hệ thống cần
xây dựng chương trình điều khiển soundcard, chương trình ứng dụng để truy
cập cơ sở dữ liệu và phát lại các cuộc thoại thông qua sound card.
II. Phương án hiện có
Hiện nay, tại một số cơ sở có nhu cầu ghi âm điện thoại được trang bị các
máy ghi âm công nghiệp của nước ngoài, giá thành khá cao khoảng vài trăm
triệu VND.
Tại trung tâm điều độ lưới điện miền Bắc A1, đang sử dụng thiết bị ghi âm
CR500T comunication recorder của hãng TEAC corporation.
Thiết bị này sử dụng một hệ vi xử lý chuyên dụng, ghi âm trực tiếp từ
đường điện thoại. Sau đây là một số đặc điểm kỹ thuật của thiết bị này.
1. Mô tả sơ bộ
+Thiết bị cho phép ghi lại các cuộc đàm thoại có thời lượng dài.
+Có khả năng thu từ 8 đến 56 kênh htoại đồng thời, có các chế độ 8, 16,
24, 32, 40, 48, 56 kênh.
+Tín hiệu tiếng nói được mã PCM 8 bit theo luật µ
3 3
ThiÕt kÕ hÖ thèng ghi ©m sè
+Thông tin được lưu trữ trên băng từ : DAT (DDS2 standard), 3.5”
MO(magneto optical) drive (ISO/IEC CD15041 standard) hoặc 5” MO drive
(ISO/IEC CD14517 standard)
2. Đặc điểm
+ Ghi âm hiệu quả: Một băng ghi đơn DDS2- standard có thể ghi 850 giờ
kênh. Một đĩa 3.5” MO 640MB ghi được 150 giờ kênh
+ Hai driver điều khiển ghi âm: cho phép thay đổi chế độ: serial mode hay
dual mode
+ Khối xác định tín hiệu thoại chuyên dụng
+ Bộ Time code
• Dual operation
• Serial operation
• Endless operation
• Single operation
+Playback and monitor
• Chức năng monitor: Có thể nghe 4 kênh đồng thời( cũng có thể tất cả
các kênh). Trong khi đang, có thể giám sát voice input của mỗi kênh
• Tìm kiếm : Có thể tìm theo thời gian hoặc số cuộc gọi
• Instant recall
• Pause : pause play mode
• Skip Forward và Skip back
• FAST/SLOW
• Fast Forward và rewind
+ Time code
• Xác định thời gian theo : Year, Month, Day, Hour, Minute
• Có thể lựa chọn time code IRIG-B
• Đồng bộ cho hai hoặc nhiều CR-500 cùng hoạt động
+ Điều hành từ xa và báo động
• Điều hành từ xa
- Điều khiển từ xa dùng RS-232C
- Không đồng bộ, 9600(mặc định),19200,38400,57600,115200 bps
- 8 bits data, 1 bit stop, no parity, no procedure
5 5
ThiÕt kÕ hÖ thèng ghi ©m sè
• Báo động khi media end, lỗi ổ A,B,HDD, lỗi kênh, lỗi time code,Quạt
dừng
+ Các chức năng khác:
• Màn hình LCD 4 characters × 4 lines
• UPS cấp nguồn thêm 5 phút kể từ khi mất nguồn cấp
• Power switch OFF protect
Đây là một thiết bị ghi âm chuyên dụng, do vậy có nhiều ưu điểm
- Có thể ghi âm đồng thời được 56 kênh.
- Có khả năng xác định tín hiệu thoại: tín hiệu Hook-off, tín
hiệu âm thanh
- Nhiều chế độ linh hoạt
- Playbach trộn lẫn nhiều kênh
- Nhiều chức năng kèm theo khác
- Có giao tiếp RS-232
- Thiết bị độc lập gọn nhẹ
Tuy nhiên, nó cũng có một số nhược điểm:
- Giá thành quá cao
- Giao diện kém
- Khả năng tìm kiếm không linh hoạt
- Sử dụng băng từ nên dung lượng và chất lượng lưu trữ
thấp.
7 7
ThiÕt kÕ hÖ thèng ghi ©m sè
III. Các phương án đề xuất
Dựa trên phân tích nhiệm vụ của hệ thống, đây là một hệ vi xử lý thời gian
thực. Có thể xây dựng hệ thống theo các phương án sau:
- Xây dựng hệ nhúng dựa trên các vi điều khiển.
- Xây dựng vi mạch nối ghép với máy tính.
1. Xây dựng hệ thống ghi âm sử dụng vi điều khiển
PhoneSơ đồ khối của hệ thống
Tín hiệu thoại được đưa qua bộ phận xác định trạng thái tín hiệu trên
đường dây điện để xác định xem kênh thoại có được kết nối hay không. Tín hiệu
trạng thái sẽ được đưa đến vi điều khiển. Tín hiệu thoại được đưa vào khối mã
mềm điều khiển là rất lớn. Những vi điều khiển có kèm hệ điều hành thì giá
thành cao. Bộ nhớ sử dụng công nghệ Flash, hiện nay có dung lượng nhỏ và giá
thành rất cao. Hơn nữa, vẫn phải xây dựng file system.
Việc xây dựng khối playback, ta có thể sử dụng các vi mạch DAC, DSP để
thiết kế một soundcard. Việc thiết kế này còn phức tạp hơn nhiệm vụ chính của
hệ thống ghi âm. Có thể tạo các bus mở rộng như ISA để phối ghép với các
soundcard có sẵn. Ta cũng có thể sử dụng riêng một máy tính PC có soundcard,
chạy chương trình ứng dụng truy cập cơ sở dữ liệu để playback.
Phương án này đòi hỏi xây dựng phần cứng khá phức tạp. Khối lượng
cho phần mềm hệ thống cũng rất lớn. Do vậy chi phí thực hiện sẽ lớn.
2. Sử dụng card thu thoại ghép nối với PC
PC là một hệ vi xử lý đa năng. Hiện nay PC ngày càng phổ biến và giá
thành rẻ. PC có nhiều lựa chọn để mở rộng qua các rãnh cắm mở rộng ISA, PCI,
USB hoặc các cổng vào ra.
Một trong nhưng ưu điểm lớn trong việc sử dụng PC là PC đã có các hệ
điều hành hoàn chỉnh. Việc điều khiển phối ghép với đĩa cứng hay soundcard
được hệ điều hành hỗ trợ. Hệ thống file đã có sẵn.
PC có giao diện thuận tiện, dễ xây dựng các ứng dụng trên đó. Hơn nữa
ta vẫn có thể sử dụng máy PC cho nhiều chức năng khác ngoài chức năng điều
khiển ghi âm.
IV. Thiết kế hệ thống ghi âm số điều khiển bằng PC
Hệ thống bao gồm các thiết bị phần cứng và các module phần mềm.
Phần cứng của hệ thống ghi âm số nhiều kênh dùng PC cần phải xây
dựng là card thu thoại nhiều kênh.
Các module phần mềm bao gồm:
- Phần mềm điều khiển card thu thoại
- Tổ chức cơ sở dữ liệu
- Điều khiển soundcard
9 9
ThiÕt kÕ hÖ thèng ghi ©m sè
C
Thanh ghi trạng thái kênh
AND
SYNC
8
MUX
8×8_1
PC
Data
Status
10
ThiÕt kÕ hÖ thèng ghi ©m sè
- Xác định xem hiện có kết nối hay không kết nối(Hook-
on,Hook-off)
- Xác định xem có tín hiệu thoại hay không
Một máy điện thoại đều phải gồm có hai phần mạch cơ bản, đó là mạch
thu phát tín hiệu chuông và mạch đàm thoại. Bộ xác định trạng thái sẽ xác định
thời điểm máy điện thoại chuyển sang kênh thoại(Hook-on) để báo cho hệ thống
biết sẵn sàng ghi âm kênh đó. Nếu kênh liên tục ở trạng thái ghi âm thì sau 1
chu kỳ ghi âm của kênh(ghi 1 byte dữ liệu dạng PCM), thì khối này lại ghi vào
thanh ghi trạng thái thông tin về kênh. Các tín hiệu trạng thái kênh kết hợp lại
qua cổng AND tạo thành yêu cầu ngắt đưa về CPU.
• Codec:
Codec là bộ mã hoá và giải mã tín hiệu. Một số vi mạch codec dành riêng
cho tín hiệu tiếng nói. Khối này có nhiệm vụ chuyển đổi ADC,mã hoá tín hiệu
tiếng nói thành dạng PCM 8 bit theo luật µ. Vi mạch TP3054 của National là một
IC chuyên dùng cho mã hoá tiếng nói. Tín hiệu vào là tín hiệu tiếng nói trên điện
thoại đưa đến chân VF
X
.Tín hiệu đưa ra là nối tiếp tại đầu ra 3 trạng thái D
một vòng lặp lấy dữ liệu từ các kênh đang active.
12
IRQ
12
ThiÕt kÕ hÖ thèng ghi ©m sè
Sơ đồ nguyên lý của card thu thoại
Trên sơ đồ ghép nối sử dụng các IC sau:
IC TP3054 : bộ codec
IC TP3155: khối tạo xung đồng bộ cho TP3054
IC 74LS164: thanh ghi dịch SIPO 8bit
IC 74LS151: MUX 8-1
IC MUX 2-1
IC 74199: thanh ghi vào ra song song 8 bit
2. Tổ chức cơ sở dữ liệu
Dữ liệu lưu trữ là các file âm thanh dưới định dạng file *.wav dạng PCM
8 bit. Những dữ liệu này sẽ được cập nhật bởi hệ thống ghi âm và được truy
xuất bởi trình ứng dụng playback để giám sát, kiểm tra nội dung các cuộc thoại.
Do vậy, dữ liệu cần phải được tổ chức sao cho cập nhật nhanh rong gian thực,
dễ dàng tìm kiếm.
Sử dụng PC có sẵn hệ điều hành, thì việc tổ chức lưu trữ trên những đĩa
cứng dung lượng lớn trở nên dễ dàng. Trong việc giám sát các cuộc gọi, một
thông tin quan trọng nhất để xác định các cuộc gọi là thời gian diễn ra các cuộc
gọi. Do đó hệ thống tổ chức lưu trữ các file âm thanh sẽ được lưu theo cơ chế
phân cấp về thời gian. Dữ liệu lưu trữ của hệ thống sẽ lưu trữ theo từng năm.
Tất cả các cuộc gọi ghi được trong năm sẽ lưu trữ theo một thư mục với tên
yearxxxx(xxxx: tên năm). Trong mỗi thư mục năm sẽ có một file ghi thông
tinphục vụ cho việc cập nhật và tìm kiếm :info.rcd. Mọi truy cập đến các cuộc
thoại được ghi trong một năm đều phải truy cập qua file này. Mỗi một cuộc thoại
của mỗi kênh sẽ được lưu vào các file *wav riêng.
File info.rcd chứa một số các cấu trúc dữ liệu cơ bản để phục vụ cho việc
*.wav
File
*.wav
File
*.wav
NULL
File
*.wav
14
ThiÕt kÕ hÖ thèng ghi ©m sè
conversation * Firstlink;// con trỏ tới phần tử đầu tiên
// của danh sách liên kết
};
Để truy cập đến bảng thông tin kênh c,tại ngày thứ d tháng m, thì địa chỉ
của nó là:
Manage [c] [(m-1)*31+d]
Cột là thông tin về kênh, hàng thông tin về ngày trong năm. Mỗi cột sẽ có
372 phần tử, do quy ước tất cả các tháng trong năm đều có 31 ngày để có được
công thức truy cập mảng trực tiếp.
Danh sách liên kết đơn mang thông tin của các cuộc thoại trong ngày
được ghi theo trật tự thời gian. Cấu trúc của một phần tử trong danh sách liên
kết:
struct conversation
{
int hour; //giờ cuộc thoại bắt đầu
int minute; //phút cuộc thoại bắt đầu
int second; //giây cuộc thoại bắt đầu
int longtime; // thời gian cuộc gọi tính bằng giây
int dial; //quay số hay không
int phonenumber; //số điện thoại liên lạc phụ thuộc
- Chương trinh con phục vụ ngắt
Khởi động cho card thu thoại thực hiện theo các bước
- Khởi động chế độ EPP của cổng LPT
- Cài dặt chương trình con phục vụ ngắt tại vector ngắt
0Fh
16 16
ThiÕt kÕ hÖ thèng ghi ©m sè
Sơ đồ khối của chương trình con phục vụ ngắt
17
Bắt đầu
Đọc tg trạng thái
i = 8
bit i 1->0
kênh i active
Đóng file
bit i 0->1
mở file mới
Đưa ra tín hiệu chọn kênh
Ghi dữ liệu vào file
i=i-1
i>0
kết thúc
17
ThiÕt kÕ hÖ thèng ghi ©m sè
b.Điều khiển soundcard và playback
Các soundcard nối ghép với PC qua ISA hoặc PCI bus. Các soundcard
này theo chuẩn của Blaster.Một soundcard gồm các bộ phận khối sau:
- Bộ xử lý tín hiệu số
- Bộ tổng hợp âm thanh
- Thiết lập mặt nạ Disable kênh trao đổi dữ liệu với soundcard :
19 19
ThiÕt kÕ hÖ thèng ghi ©m sè
OUT TGMATNA,4+[channelDMA mod 4]
ChannelDMA kênh DMA dùng để trao đổi dữ liệu với soundcard
- Xoá mạch lật F/L
- Ghi chế độ làm việc cho DMA
7 6 5 4 3 2 1 0
chọn kênh
chế độ hoạt động
Địa chỉ tăng/giảm chế độ truyền
Cho phép tự khởi đầu
Dạng thức của thanh ghi chế độ
Để làm việc với soundcard, thanh ghi chế độ cần được thiết lập: chế độ
hoạt động đặt ở chế độ chuyển từng byte, địa chỉ tăng. Chế độ khởi đầu đặt cho
phép tự khởi đầu. Chế độ truyền đặt 01 cho playback và 10 cho recording. Kênh
được chọn là kênh DMA dành cho soundcard. Sau đây là các giá trị của thanh
ghi chế độ tương ứng với các chế độ làm việc của soundcard:
• 48h + channelDMA : Single Cycle Playback
• 58h + channelDMA : Auto-initialized Playback
• 44h + channelDMA : Single Cycle Record
• 54h + channelDMA : Auto-initialized Record
- Ghi offset của vùng đệm dữ liệu theo byte thấp và byte cao
- Ghi độ dài dữ liệu cần chuyển
- Ghi địa chỉ trang của vùng đệm vào thanh ghi trang của DMA
- Bỏ mặt nạ cho kênh Soundcard
Lập trình playback
Chương trình playback có hai nhiệm vụ chính:
- Lập trình truy cập cở sở dữ liệu
21 21
ThiÕt kÕ hÖ thèng ghi ©m sè
4 bit sau không đổi.
Bit 3: khi ghi âm đặt bằng 1
Khi playback đặt bằng 0
Bit 2: quy định chế độ làm việc với DMA: Single Cycle
hoặc auto-initialized.
Bit 1 Có sử dụng hàng đợi hay không. Sử dụng hàng đợi
sẽ làm tăng tốc độ truyền âm, không bị gián đoạn giữa
các khối dữ liệu.
+ Gửi chế độ với quy cách:
+Gửi kích thước khối dữ liệu(low/high)
-Cx tương tự như Bx nhưng dùng cho DMA 8 bit
• Chương trình con phục vụ ngắt:
Vì có 2 chế độ vào ra dữ liệu với soundcard qua DMA là Single Cycle và
Auto-Initialized, nên công việc của chương trình con phục vụ cho mỗi chế độ là
khác nhau.
Trong chế độ Single Cycle chương trình con phục vụ ngắt thực hiện
những công việc sau:
- Thiết lập chế độ làm việc DMA cho khối dữ liệu tiếp theo
- Thiết lập chế độ cho DSP làm việc với khối dữ liệu tiếp theo
- Chuẩn bị vùng đệm cho khối dữ liệu tiếp theo
22 22
ThiÕt kÕ hÖ thèng ghi ©m sè
- Báo ngắt cho Soundcard bằng cách đọc cổng 2xEh với soundcard 8
bit và 2xFh với soundcard 16 bit
- Báo kết thúc ngắt cho PIC bằng cách ghi vào cổng 20h đến A0h
Để ghép nối vào ra với Soundcard,người ta hay sử dụng chế độ Auto-
Inittialized của DMA. Khi sử dụng chế độ Single Cycle âm thanh bị gián đoạn
giữa các khối dữ liệu, điều này làm giảm chất lượng âm thanh.Trong chế độ
Tài liệu tham khảo
1.Bài giảng môn Kỹ thuật ghép nối - Bùi Quốc Anh
2.Kỹ Thuật Vi xử lý – Văn Thế Minh
3.Kỹ thuật ghép nối máy tính – Ngô Diên Tập
4.Kỹ thuật số-Nguyễn Thuý Vân
5.Micro Processor and Interface-D.Hall-MCGraw Hill
25 25