Lưu trữ từ cơ bản là một môi trường tương tự.Dữ liệu mà một PC lưu trữ trên nó, tuy nhiên, là thông tin kỹ thuật số - đó là những 1s hay 0s. Khi ổ đĩa gửi thông tin kỹ thuật số đến đầu đọc từ, đầu này tạo ra miền từ trong môi trường lưu trữ với các phân cực cụ thể tương ứng với các điện áp âm và dương mà ổ đĩa tác động đầu vào. Các đảo nghịch thông lượng tạo ra những ranh giới giữa các vùng phân cực âm và đương mà bộ phận điều khiển ổ đĩa dùng để mã hóa dữ liệu kỹ thuật số trên môi trương tương tự. Trong suốt quá trình đọc, mỗi đảo nghịch thông lượng mà ổ đĩa phát hiện ra phát sinh xung điện âm hay dương mà thiết bị này dùng để tái lập lại các dữ liệu nhị phân ban đầu.
Để tối ưu hóa bố trí các chuyển đổi thông lượng trong quá trình lưu trữ từ, ổ đĩa chuyển dữ liệu số đầu vào thông qua một thiết bị gọi là một bộ tạo mã/giải mã (endec: encoder/decoder), biến đổi thông tin nhị phân thô trở thành một dạng sóng được thiết kế để đặt tối ưu sự chuyển đổi thông lượng (các xung) trong môi trường. Trong suốt quá trình dọc, bộ endec này đảo nghịch quy trình và giải mã loạt xung trở lại dữ liệu nhị phân ban đầu. Qua nhiều năm, vài chương trình tạo mã dữ liệu bằng cách này được phát triển; một số tốt hơn và hiệu quả hơn những cái khác mà bạn sẽ thấy trong phần này.
Các mô tả khác của quy trình trình tạo mà dữ liệu có thể đơn giản hơn nhiều, nhưng chúng bỏ sót thực tế thực hiện một số vấn đề liên quan đến tính tin cậy của ổ cứng rất quan trọng - ấy là định thời gian. Các kỹ sư và nhà thiết kế thường xuyên mở rộng đường biên để ngày càng có nhiều bit thông thường hơn vào trong số lượng giới hạn của các chuyển đảo thông lượng từ tính cho mỗi inch thông lượng. Những gì họ đã nghĩ ra, về cơ bản, là một thiết trong đó các bit thông tin được giải mã không chỉ từ việc có hay không các chuyển đảo thông lượng, mà còn định thời gian giữa các chuyển đảo. Càng chính xác thời gian chuyển đảo, càng nhiều thông tin được mã hóa (và sau đó là giải mã) từ thông tin định thời gian.
Trong bất kỳ dạng nào chuyển tín hiệu nhị phân, việc sử dụng định thời gian là quan trọng. Khi một sóng đọc hay ghi được biên dịch, định thời gian của từng chuyển đổi điện áp là then chốt. Định thời gian là cái định rõ một bit cụ thể hay ô chuyển đổi – đó là, cửa sổ thời gian trong đó ổ đĩa đang ghi hay đạng đọc một chuyển đổi. Nếu định thời gian hết, một chuyển đổi điện áp định sẵn được nhận biết tại thời gian sai khi đang nằm ở trong ổ khác, làm cho quá trình chuyển đổi hay mã hóa không hiệu quả, dẫn đến các bit bị bỏ lỡ, bị thêm vào hay bị biên dịch sai. Để bảo đảm việc định thời gian là chính xác, các thiết bị truyền và nhận phải trong sự đồng bộ nhất. Ví dụ, nếu ghi một 0 được thực bằng cách không đặt chuyển đổi trên đĩa trong khoảng thời gian định trước hay trong một ô định trước, tưởng tượng là ghi đổi trên đĩa trong khoảng thời gian định trước hay trong một ô định trước, tưởng tượng là ghi 10 bit 0 trong một hàng – bạn có một khoảng thời gian dài (10 ô) không có hoạt đông, không có chuyển đổi.
Hãy tưởng tượng đồng hồ trên bộ tạo mã tắt một xíu trong khi dữ liệu so sánh với khi nó được ghi ban đầu. Nếu nhanh, bộ tạo mã có thể nghĩ là trong suốt 10 ô không có chuyển đổi, chỉ có 9 ô đã thực sự trôi qua. Hay nếu chậm, thay vào đó bộ tạo mã cho rằng 11 ô đã thật sự trôi qua. Trong cả hai trường hợp, điều này dẫn đến một lỗi đọc, nghĩa là những bit được ghi ban đầu sẽ không được đọc như là giống nhau. Để ngăn ngừa các lỗi định thời gian trong mã hóa/giải mã ổ đĩa, sự đồng bộ hóa tốt nhất là cần thiết giữa quy trình đọc và ghi. Sự động bộ hóa này thường được hoàn thành bằng cách thêm một tín hiệu định thời gian riêng biệt, gọi là một tín hiệu đồng hộ (clock signal) vào sự chuyển giao giữa hai thiết bị. Các tín hiệu đồng hồ và dữ liệu cũng được kết hợp và truyền đi như một tín hiệu đơn. Hầu hết các hệ thống mã hóa dữ liệu từ tính sử dụng loại kết hợp các tín hiệu đồng hồ và dữ liệu.
Thêm một tín hiệu đồng hồ vào dữ liệu đảm bảo các thiết bị liên lạc biên dịch chính xác các ô bit đơn. Mỗi ô bit được giới hạn hai ô khác chứa chuyển đổi đồng hồ. Bởi vì thông tin đồng hồ được gửi cùng với dữ liệu, các đồng hồ này giữ nguyên đồng bộ, ngay cả khi môi trường chứa một chuỗi dài bit 0 y hệt. Không may là các ô chuyển đổi chỉ sử dụng cho định thời gian lại chiếm không gian trên môi trường có thể được sử dụng cho dữ liệu.
Bởi vì số lượng các chuyển đổi thông lượng mà một ổ đĩa có thể ghi trong một khoảng định trước trong một môi trường cụ thể bị giới hạn bởi tính chất vật lý hay mật độ môi trường và công nghệ đầu từ, các kỹ sư ổ đĩa đã phát triển nhiều cách mã hóa dữ liệu bằng cách sử dụng một số lượng tối thiểu các chuyển đổi thông lượng (cân nhắc từ thực tế là một số chuyển đổi thông lượng chỉ dùng cho định thời gian được yêu cầu). Mã hóa tín hiệu cho phép hệ thống sử dụng tối đa công nghệ phần cứng ổ đĩa có sẵn. Mặc dù các hệ thống mã hóa đa dạng đã được thử, chỉ một số còn tồn tại đến ngày nay. Qua nhiều năm, ba loại cơ bản thông dụng nhất là:
+ Mã hóa Frequency Modulation
+ Mã hóa Modified Frequency Modulation
+ Mã hóa Run Length Limited
Những phần sau sẽ tìm hiểu những mã này, chúng hoạt động như thế nào, nơi nào chúng được sử dụng, bất kỳ ưu và khuyết điểm khi ứng dụng nó. Nó sẽ giúp nhìn vào hình 8.10 (phần sau của chương này) khi bạn đọc các mô tả những hệ thống mã hóa này bởi vì số liệu này mô tả cách từng mã có thể lưu trữ một “X” trên cùng một thiết bị như thế nào.
Mã hóa GM
Một trong những kỹ thuật ra đời sớm nhất cho dữ liệu mã hóa của lưu trữ từ tính gọi là Frequency Modulation. Hệ thống mã hóa này đôi khi được gọi là Mã hóa mật độ đơn (Single – Density encoding) được sử dụng trong các ổ đĩa mềm cũ nhất được lắp đặt trong các PC. Máy tính xách tay Osborne, cho ví dụ, dùng ổ đĩa mềm mật độ đơn này, lưu trữ khoảng 80KB dữ liệu trên một đĩa đơn. Mặc dù nó phổ biến cho đến cuối thập niên 1970, mã hóa FM không còn được sử dụng nữa.
Mã hóa MFM
Mã hóa Modified Frequncy Modulation được phát minh để làm giảm số lượng các đảo chiều thông lượng được sử dụng trong hệ thống mã hóa FM ban đầu, do đó nén được nhiều dữ liệu vào đĩa đơn. Mã hóa MFM giảm tối đa việc sử dụng của các chuyển đổi đồng hồ, đề dành nhiều chỗ trống cho dữ liệu. Nó ghi lại chueyenr đổi đồng hồ chỉ khi một bit 0 được lưu trữ bị theo sau bởi một bit 0 khác; trong tất cả các trường hợp khác, một chuyển đổi đồng hồ không bị yêu cầu. Bởi vì MFM làm giảm thiểu tối đa việc sử dụng các chuyển đổi đồng hồ, nó làm tăng gấp đôi tần số đồng hồ được sử dụng bởi mã hóa FM, cho phép nó lưu trữ gấp đôi dữ liệu bit trong cùng số lượng đảo chiều thông lượng như FM. Do mã hóa MFM ghi gấp đôi dữ liệu bit bằng cách dùng cùng số lượng đảo chiều thông lượng như FM, xung của dữ liệu được tăng bit bằng cách dùng cùng số lượng đảo chiều thông lượng như FM, xung của dữ liệu được tăng gấp đôi và ổ đĩa thực sự thất cùng tổng số đảo chiều thông lượng như FM. Điều này có nghĩa là một ổ đĩa sử dụng mã hóa MFM đọc và ghi dữ liệu ở tốc độ gấp hai lần FM, mặc dù ỗ đĩa thấy các đảo chiều thông lượng đạt tần số như trong FM. Bởi vì nó hiệu quả gấp hai lần mã hóa Fm, mã hóa MFM còn được gọi là Ghi mật độ gấp đôi (Doubled – Density recording). MFM hầu như được sử dụng trong tất cả các ổ đĩa mềm ngày nay và gần như đã trong tất cả các ổ đĩa cùng trong nhiều năm. Ngày này, hầu hết các ổ đĩa cứng sử dụng sự đa dạng của các mã hóa RLL, cung cấp hiệu quả tốt hơn MFM.
Theo “Nâng cấp và sửa chữa máy tính” Scott Mueller