Author Topic: Biến đổi tín hiệu Analog & Digital  (Read 13241 times)

0 Members và 3 Khách đang xem chủ đề.

Offline L.H.T.D

  • Moderator
  • Thành Viên Tích Cực
  • *****
  • Posts: 2.020
  • Bầu Chọn: +108/-258
  • Gender: Male
  • Nick sắp bị treo.Hãy nạp thêm "bài độc" để gia hạn
    • View Profile
Biến đổi tín hiệu Analog & Digital
« on: 16 Tháng Một, 2008, 05:44:43 AM »
Biến đổi tín hiệu Analog & Digital

Tín hiệu tương tự và tín hiệu số

Trong thực tế ta gặp rất nhiều trường hợp chuyển qua lại giữa tín hiệu tượng tự (Analog) và tín hiệu số (Digital)
Trong phần này tôi sẽ giới thiệu quá trình chuểyn đổi giữa 2 lạo tín hiệu này dưới dạng lý thuyết đơn giản
Phần này cũng sẽ giúp các bạn hiểu được các bit rate được tạo ra như thế nào và nó ảnh hưởng như thế nào đến chất lượng tín hiệu thu được .



Phần trên là tín hiệu Analog (có dạng sóng hình sin), là 1 miền liên tục, có rất rất nhiều giá trị (trục thẳng đứng là biên độ tín hiệu, vì là liên tục nên có vô số giá trị - các bác học vi phân trong lớp 12 chắc biết rồi chứ ạ)

Phần dưới là tín hiệu Digital (có dạng các xung vuông) chỉ có 2 giá trị : 0 và 1

Mức 1 không nhất thiết phải điện áp dương hoặc lớn hơn mức 0 . Điện sao cũng được, miễn là có 2 mức khác nhau.
Ví dụ: 15V là mức 0 còn -5 là mức 1, tùy thuộc vào hệ thống. Có thể đặt mức theo khoảng điện áp, như từ 0V->3V là mức 0 ; từ 3V->6V là mức 1.Trên hình, có chỗ điện áp là 4V nhưng vẫn là mức 1. Nhiễu chỉ có thể tăng/giảm biên độ tín hiệu nhưng trong hệ thống số, tín hiệu chỉ có 2 mức nên 4V vẫn là mức 1. Rõ ràng, tín hiệu số có khả năng hạn chế nhiễu.

Nếu tín hiệu là 3V thì sao nhỉ ? Lúc đó, nó không xử lý -> treo máy , hihihi. Nói chung, người ta luôn chọn khoảng cách giữa mức 1 và mức 0 sao cho hệ thống vẫn hoạt động tốt với mức ảnh hưởng lớn nhất của nhiễu. Nhiễu thường bé lắm ! Cỡ mili vôn thôi !

Nhiễu nhỏ như vậy, cỡ mili vôn hoặc micrô vôn mà nghe cát-xét thì vẫn nghe tiếng xì ? Bởi vì tín hiệu đọc được bởi đầu từ thì cỡ vài mili vôn thôi! Mà nhiễu thì chỗ nào cũng ảnh hưởng, cũng xâm nhập được, tức là đầu từ cũng bị nhiễu. Do vậy, ở lúc đó, chỉ vài mili vôn nhưng ảnh hưởng rất ghê! Mới đọc từ băng lên chỉ có 10mV mà nhiễu tới 3mV rồi! Suy nghĩ 1 chút, ta thấy để đánh giá mức ảnh hưởng của nhiễu thì không thể dựa vào điện áp nhiễu. Tín hiệu 5V còn nhiễu vài 5mV thì không sao nhưng tín hiệu 200mV mà nhiễu cỡ vài mV là ghê ! Để đánh giá điều này, người ta sử dụng thông số S/N ( signal/noise ) , tức là tỷ số tín hiệu/nhiễu

Ví dụ 1 : S/N = 5V / 5mV = 1000
Ví dụ 2 : S/N= 200mV/ 5mV = 40
Rõ ràng, ví dụ 1 cho chất lượng tốt hơn vì mức tín hiệu gấp 1000 lần nhiễu (nhiễu quá nhỏ), ví dụ 2 tín hiệu gấp có 40 lần nhiễu (nhiễu tương đối là lớn)

Các bạn hay chơi Ampli, cát-xét, Equalizer chắc cũng hay nhìn thấy cái chữ “dB”, vậy nó là cái gì?
Ngoài cách đánh giá mức tín hiệu so với nhiễu như ở trên, còn có đại lượng PSNR
PSNR = 20lg S/N (peak signal to noise ratio )
Ví dụ 1 : PSNR = 20log 5V/5mV  = 20log 1000 = 20x3 = 60dB
Tại sao phải lấy log ? Vì tai người, mắt người thường không tuyến tính, tức không tăng theo hàm bậc nhất .
Ví dụ : bạn nghe 1 âm thanh 2W và 8W thì chưa chắc gì có cảm giác lớn gấp 4 lần . Gía trị dB có thể âm vì sử dụng log mà, ví dụ lg (0/1000) = -2 . Khi đó thì nghe nhỏ hơn .Hàm lg là phép toán ngược với phép lũy thừa
102 = 100 =>lg 100= 2

Chắc nhiều người đang thắc mắc, vậy quá trình ghi và đọc đĩa CD nó diễn ra như thế nào ? Xin thưa là đại khái như sau :

Trong quá trình ghi đĩa CD, luồng tín hiệu dạng số được đưa vào đầu vào của tia lazer (chuỗi các bít 1 và 0, , ví dụ như là 100110111010 ….),gặp bít 0 thì tia lazer bắn 1 lỗ vào bề mặt của đĩa, còn bít 1 thì không bắn.
Khi đọc đĩa CD thì quá trình ngược lại, mắt thần (len) của đầu đọc đĩa sẽ phát ra tia lazer chiều vào mặt đĩa CD. Khi gặp lỗ trên mặt CD, tia lazer không bị phản xạ lại, đầu đọc hiểu đó là bít 0. Chỗ nào còn nguyên (không bị lỗ), tia lazer bị phản xạ ngược lại, mắt thần nhận được tia phản xạ đó, đầu đọc đĩa hiểu đó là bít 1.
Rõ ràng, với hệ thống tương tự, các máy móc phải được thiết kế để phân biệt rất nhiều mức tín hiệu. Trong khi đó, với hệ thống số, máy móc chỉ cần phân biệt 2 mức. Với 2 mức là rất dễ chế tạo. Ví dụ như, công tắc=đóng hoặc mở, đèn=sáng hoặc tắt, dây điện=dẫn hoặc ngưng, tụ điện= phóng điện hoặc nạp điện
Tóm lại, với đĩa CD thì cứ vô tư sao chép, miễn đĩa tốt thì không bao giờ xì xì do sao chép nhiều.
Chính vì thế nên nếu sao chép các file nhạc (không có convert) từ đĩa này sang đĩa kia, từ PC sang USB…. Thì không baio giờ mất chất lượng .

Chúng ta bắt đầu tìm hiểu cách biến 1 tín hiệu tương tự sang tín hiệu số và ngược lại .

Lấy mẫu: (SAMPLING)

Có 1 đóng bài hát của Tuấn Vũ, lấy ngẫu nhiên 1 bài ra nghe rồi kết luận : đại ca hát hay quá => Cái đó là gọi là lấy mẫu đấy. 



T1, T2... là các lần lấy mẫu. T1 là lần lấy mẫu thứ nhất, T2 là lần thứ 2 ….
t1, t2... là khoảng thời gian đẻ tiếp tục lấy mẫu tiếp theo, theo hình trên lần lấy mẫu thứ nhất T1 cách lần lấy mẫu thứ hai T2 một khoảng thời gian là t2.
Lấy mẫu là giai đoạn đầu của quá trình chuyển tín hiệu tương tự thành tín hiệu số (tức điện áp ở micro thành điện áp số để lưu vô đĩa CD). Cứ sau 1 khoảng thời gian cố định, người ta đo mức tín hiệu tương tự - tất nhiên là thiết bị điẹn tử đ chứ có cha nào ngồi để đo được. Từ t1 đến t2, có vô số giá trị nhưng ta chỉ lấy “9V” làm giá trị đại diện. Tương tự cho các thời điểm khác. Vì sao không lấy hết các giá trị mà chỉ lấy ở thời điểm T1 ? Dễ hiểu thôi ! Vì sao không kiểm tra nguyên bao gạo mà chỉ lấy 1 nhúm ra coi rồi kết luận gạo ngon hay dở? Vì nhiều quá ! Nếu ta lấy mẫu hết thì rõ ràng ta cần nhiều đĩa để lưu trữ. Bởi vậy mà từ t1->t2, ta lấy 1 giá trị thôi !
Số lần lấy mẫu trong 1 giây gọi là tần số lấy mẫu (Sampling rate)
Ví dụ : Sampling rate f= 8KHz => T=1/f = 1/8000Hz = 0,125ms
Nghĩa là : cứ 0,125 giây thì người ta lại đo lấy mẫu một lần , tương đương 1 giây lấy mẫu 8000 lần . Kinh khủng .

Lượng tử hóa (Quantize)

Người ta chia điện áp đo được thành các mức Một mức đại diện cho 1 khoảng giá trị.
Ví dụ 16 mức
0 - 1V : mức 0
1V - 2V: mức 1
........
15V - 16V : mức 15

giả sử điện áp đo được là :
0.5V ---> mức 0 ,
1V ---> mức 1 ,
1.2V ---> mức 1 ,
3V ---> mức 3 ,
5.4V ---> mức 5 ,

Sau bước lượng tử hóa, miền giá trị của các điện áp đọc được là rất rộng sẽ trở thành 1 số giá-trị hữu hạn nhất định. Như ta thấy, 1V và 1.2V đều là mức 1 . Vậy ở bước này, 1 lần nữa ta lại làm sơ lược hơn tín hiệu.
-----Số lần lấy mẫu là vô hạn --> trong 1 khoảng thời gian thì chỉ lấy 1 số mẫu nhất định
----- giá trị của các mẫu lấy được là vô hạn ----> chia thành các mức và 1 khoảng giá trị sẽ được đại diện bởi 1 mức
Bước này, nói cho toán học 1 chút là " Ta rời rạc hóa tín hiệu". Đang là 1 đường liền tục thì biến thành 101010

MÃ HOÁ

Bước này đơn giản là ta đổi hệ 10 thành nhị phân. Sau đó, dĩ nhiên là truyền đi hoặc là lưu vô đĩa CD, đĩa cứng (nếu đang thu âm... )
Vd: lấy ví dụ trên, giả sử dùng 4 bit để mã hoá các mức .
0.5V ---> mức 0 (0000)
1V ---> mức 1 (0001)
1.2V ---> mức 1 (0001)
3V ---> mức 3 (0011)
5.4V ---> mức 5 (0101)
Luồng tín hiều thu được sẽ là 00000001000100110101
Thiết bị thu sẽ đọc lần lượt, dựa vào số bít dùng để mã hoá tín hiệu đã thống nhất từ trước, nó tách từng nhóm 4 bit trong dãy số trên ra, ví dụ 0000 nó hiểu là 0, 0001 là mức 1 …

Số các mức gọi là độ rộng của mẫu (Resolution, ), ví dụ trên độ rộng là 16 mức => dùng 4 bit nhị phân để lưu trữ.
Dùng 1 số nhị phân có 4 bit thì có tất cả 16 số nhị phân : 0001, 0010,....... 1111 . Bởi vì : 2 mũ 4 =16 . Muốn lưu trữ 256 số thì số bit cần dùng để mã hoá 8 (vì 2 mũ 8 = 256 )

Tốc độ lấy mẫu = (tần số lấy mẫu) x (độ rộng mẫu) . Tiếng Anh gọi là sampling rate
vd: 16khz x 8 bit = 16000 x 8 = 128000b/s = 128kb/s

He he, đến đây chắc mọi người biết bit rate bài hát được hình thành và tính toán ra sao rồi chứ .

Ở trên là quá trình tạo tín hiệu PCM. Khi bạn thu âm bằng micro vào PC, CD thì thực sự ta đang thực hiện quá trình trên. Bây giờ nhìn vào thông số như "PCM 44khz 16bits " thì chắc là bạn đã hiểu được ý nghĩa của chúng rồi chứ
Không biết có hiểu thật không, tôi cứ giải thích lại 1 lần nữa cho chắc, đó là
+ Tần số lấy mẫu (sampling rate) = 44KHz
+ Số bít dùng để mã hoá các mức tín hiệu = 16bít
=> Tốc độ (bit rate) = 44Khz x 16 bit = 44000Hz x 16 bit = 704000b/s = 704kb/s



Đó là quá trình biến đổi từ Analog sang Digital
Vậy có được file dạng Digital rồi, để đọc được nó ta phải làm sao
Qúa trình đi ngược lại so với quá trinhg trên mà thôi .

Giải mã :



Các bạn thấy sau khi giải mã thì ta thu được 1 đường gấp khúc trong khi đường gốc là 1 đường cong. Chuyện này dễ hiểu đúng không ?

Các bạn có thấy hình trên đường gấp khúc nhìn rõ lắm không ?
Cũng dễ thấy, nếu ta càng tăng tần số lấy mẫu, tăng độ rộng mẫu thì đường giải mã được sẽ càng mịn (trên hình : các đường nối giữa các lần lấy mẫu sẽ nhỏ lại, càng nhỏ ta càng thấy nó mịn hơn đúng không) và càng giống đường gốc. Điều này giải thích tại sao bitrate càng cao thì nghe càng hay, càng giống thực, vì kết quả tái tạo lại sẽ chính xác hơn.
Một ông tên là Nyquyst đã nghiên cứu và nói là tần số lấy mẫu lớn hơn 2 lần băng thông thì kết quả thu được là gần trung thực .

Ví dụ: tai người nghe 0Hz->20Khz,suy ra băng thông = 20khz-0hz = 20khz, vậy thì tần số lấy mẫu ít nhất phải là 2x 20khz =40khz. Thời nay, với đĩa DVD, người ta đã dùng tới 96kHz
Dù tần số lấy mẫu có tăng lên thì rõ ràng ta cũng mất thông tin. Ta đã không lưu trữ tất cả. Cái gì mà chuyển sang Digital thì đã cắt thành từng khúc hết rồi ! Khi đó chỉ có mất đi chứ không thể thêm ra. Bởi vậy đừng dùng phần mềm convert để tăng bitrate hay tần số lấy mẫu nhé các bác. Ảnh số cũng tương tự. Khi phóng to ảnh trên máy vi tính thì quá ghê ! Càng phóng càng ghê ! Quá trình scan hình cũng như trên đó! Người ta chia tấm hình thành những ô nhỏ, gọi là pixel. Trong 1 ô như vậy chắc cú là có nhiều điểm với màu khác nhau nhưng người ta chỉ lấy 1 màu làm đại diện. Dễ thấy, nếu số pixel cao và độ sâu màu cao thì ảnh sẽ đẹp và sắc nét. Với máy ảnh số thì màn hình bao gồm những cảm biến. Mỗi cảm biến là 1 pixel, màu của 1 cảm biến là màu của 1 điểm ảnh. Cảm biến là từ chỉ thiết bị cảm nhận được sự biến đổi. Nói chung, cái nào mà biến ánh sáng, nhiệt độ,.. thành điện thì là cảm biến (sensor). Ánh sáng, nhiệt độ,.. thay đổi thì điện cũng thay đổi theo là được. Và đều được gọi là thiết bị mặc dù nó nhỏ xíu

Tới đây, có thể mọi người thắc mắc là " Tại sao tín hiệu mất đi mà không cảm thấy như vậy" . Đó là vù nhanh quá nên mình khó nhận ra đấy!, tai người mà chứ có phải tai …. Đâu , hihihihi .

Kết luận:

- Bitrate, tần số lấy mẫu càng cao thì nghe càng hay
- Convert lại để tăng bit rate :
 nếu dùng 1 file MP3 64kbs Convert lên MP3 128kbs hoàn toàn không hay thêm tí nào.
 Nếu dùng 1 file MP3 64kbs 32kHz Convert lên MP3 128kbs 44kHz hoàn toàn không hay thêm tí nào.
- Hạn chế sự có mặt của thiết bị Analog trong quá trình xử lý/biên tập âm thanh/hình ảnh.

Các file WMA, MP3 , AAC, đều là dạng lossy(mất thông tin). Các encoder Mp3,... sẽ cắt bớt những phần mà tai người rất ít nhận ra, ví dụ như khoảng tần số cao từ 16khz-20khz, hoặc là trong lúc có rất nhiều âm to, nhỏ thì những âm nhỏ sẽ được bỏ đi .

Nói chuyện vui chút, các bạn chắc cũng đã mua đĩa ngoài chợ trời rồi đúng không ?Các bạn để ý 1 điều : đĩa VCD mua ở chợ thường là ca nhạc lồng thêm người mẫu ThaiLand hoặc phim đám đá hự hự. đó là do họ lồng vào bán cho chạy. Nguồn của mấy ông làm đĩa là trên mạng mà thôi ! Trên mạng thì là mp3, wma,.. đều là những dạng lossy . Sau đó, mấy ổng đó phải chuyển thành MPEG để ghi ra đĩa VCD. Mà MPEG lại là 1 dạng lossy . Hai lần lossy nên chất lượng kém là phải. Hehe, đúng nhỉ .

Chắc đến đây các bạn đã có chút ít hiểu biết thêm về lĩnh vục điện tử số, đặc biệt là liên qua trực tiếp đến các file MP3 Tuấn Vũ – tài sản vô giá của mình . Hy vọng nó giúp ích nhiều hơn nữa trong cuộc sống số muôn màu của chúng ta.

Phần tiếp theo tôi sẽ giới thiệu sơ qua 1 số khái niệm hay gặp trong lĩnh vực âm thanh và hình ảnh . Hẹn gặp lại !



.