Skip to content

Instantly share code, notes, and snippets.

@tenpoku1000
Last active April 17, 2024 06:30
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tenpoku1000/7aea553b7b895db006a6a8e77c73f535 to your computer and use it in GitHub Desktop.
Save tenpoku1000/7aea553b7b895db006a6a8e77c73f535 to your computer and use it in GitHub Desktop.
レガシー規格 SATA を振り返る

レガシー規格 SATA を振り返る

2024/04/17 更新

この記事は、自作OS Advent Calendar 2018の 12/5 の記事として書かれました。

釣りタイトルの印象はあるとは思います。SATA は、NVM Express への移行も進んでいると思われるので、主な仕様と製品を振り返ってみようという企画です。

自作 OS で SATA 対応といっても、どのような範囲まで対応しているのか、明記しておく必要があるのではないかと思います。なぜならば、本稿に記載しているように多様なデバイスがあり、個別の対応が必要な場合があると思われるからです。

SATA で十分だ、NVM Express 不要みたいな議論は、やるだけ無駄でしょう。PC を買い替えたら、NVM Express SSD だったという状況は増えていきます。新製品を買わせないと、メーカーや販売店は存続できないので、新規格を推進していきます。SATA や eMMC は低価格品などで残る可能性はあると思いますが。

この記事ではセキュリティ関連の仕様など、漏れている仕様もあり、不十分な場合も多いとは思いますが、まとまったページが無いという認識だったので、記事にしてみました。

ストレージ仕様の調査

2018 年 12 月時点では、例えば「Seagate Technology SMR SPECS CNET」で Web 検索すると、以下のサイトの SMR HDD の仕様が書かれているページがヒットするので、便利です。SSD や HDD の仕様は、メーカーサイトでは古いものは削除されることが普通で、詳しい情報は載ってないことが多いためです。2024 年 4 月現在では CNET にユーザ登録が必要そうですが、実際に確かめていないため、以降の CNET の URL は 2018 年 12 月時点の調査結果をそのまま記載しています。

Storage - CNET
https://www.cnet.com/tech/computing/computer-accessories/storage/

SATA 仕様

SATA-IO 非会員は、有償で仕様書が入手できるようです。

Purchase SATA Specification | SATA-IO
https://sata-io.org/developers/purchase-specification

書籍も出ていますが、ハードウェアの話題が中心で、ソフトウェア(ATA コマンド)について IDE の本を参照する必要があります。後述のように、新しいコマンドの仕様は増え続けています。

シリアルATAの基礎とFPGAへの実装
https://web.archive.org/web/20160302020843/https://shop.cqpub.co.jp/hanbai/books/49/49901.html

[品切れ重版未定2015.6.25] 改訂版 ATA(IDE)/ATAPIの徹底研究
http://www.cqpub.co.jp/hanbai/books/49/49891.htm

AHCI 仕様

SATA の規格には、ホストコントローラの仕様は規定されてなかったと思いますが、AHCI が標準的に使われているようです。

AHCI Specification
https://www.intel.com/content/www/us/en/io/serial-ata/ahci.html

AHCI Memo · osdev-jp/osdev-jp.github.io Wiki
https://github.com/osdev-jp/osdev-jp.github.io/wiki/AHCI-Memo

AHCI_code_example · osdev-jp/osdev-jp.github.io Wiki
https://github.com/osdev-jp/osdev-jp.github.io/wiki/AHCI_code_example

SATA AHCI-IP コア・リファレンス・デザイン説明書
https://www.dgway.com/products/IP/SATA-IP/dg_sataahciip_refdesign_jp.pdf

SATA AHCI IP コア データシート
https://www.dgway.com/products/IP/SATA-IP/dg_sata_achi_ip_data_sheet_jp.pdf

AHCIを用いたPCとFPGA間の 汎用インターフェースの実装と評価
https://www.slideshare.net/miyox/reconf-201506

S.M.A.R.T

製品毎の個別対応が必要な分野であるらしく、流用なし新規開発は困難だと思われます。

CrystalDiskInfo Internals ~S.M.A.R.T.を極める~ | バラエティ,水晶雫 | OLIOSPEC
https://www.oliospec.com/shopdetail/000000007228/ct1229/page1/order/

CrystalDiskInfo – 参考文献 – – Crystal Dew Blog
https://crystaldew.info/2008/03/29/crystaldiskinfo-%E5%8F%82%E8%80%83%E6%96%87%E7%8C%AE/

USB-HDD 対応はなぜ難しいのか? – Crystal Dew Blog
https://crystaldew.info/2008/12/15/usb-hdd-%e5%af%be%e5%bf%9c%e3%81%af%e3%81%aa%e3%81%9c%e9%9b%a3%e3%81%97%e3%81%84%e3%81%ae%e3%81%8b%ef%bc%9f/

SecureErase

古い記事も多く、自分でも作業を実施したことはなかったので、掲載には少し迷いもあったのですが、掲載しないと存在が認識されない場合もあるだろうということで、書いておきます。

忘却の彼方: Linuxを使用したSecureEraseの手順
http://marosama.blogspot.com/2010/03/linuxsecureerase.html

忘却の彼方: Crucial M500/M550/MX100とSecure Erase
http://marosama.blogspot.com/2014/11/crucial-m500m550mx100secure-erase.html

一方、ふうえんさんちでは… Secure Eraseを回復不可能セクタに試す
https://web.archive.org/web/20230325020417/http://blog.phooen.com/blog-entry-24.html

ALL about Linux: SecureErase を実施してみた
http://luna2-linux.blogspot.com/2012/08/secureerase.html

ALL about Linux: SecureErase のために frozen 状態を解除する方法
http://luna2-linux.blogspot.com/2012/09/secureerase-frozen.html

ALL about Linux: 中古 SSD の SecureErase
http://luna2-linux.blogspot.com/2012/12/ssd-secureerase.html

SSD 製品の例・仕様

  • SATA I

この世代の製品が存在したのかは、筆者には確認できませんでした。

  • SATA II

この世代の製品は、中古市場でも見かけることが少なくなりました。ACS 未対応のため、SSD として OS から認識しないと思われます。

  • ACS(AT Attachment 8 - ATA/ATAPI Command Set)

手元にある SSD にもなく、この世代の製品の型番を特定することが出来ませんでしたが、規格導入の背景が記事になっていました。

ASCII.jp:SSDサポートにさらなる一歩を踏み出したWindows 7 (1/2)|あなたの知らないWindows
http://ascii.jp/elem/000/000/483/483500/

ASCII.jp:Windows 7の実像 Part 5 OSのSSD対応とエンハンスドストレージ (1/2)|次世代Windowsの姿が見えた!
http://ascii.jp/elem/000/000/203/203235/

【元麻布春男の週刊PCホットライン】SSDに関するWindows 7の3つの特徴 - PC Watch
https://pc.watch.impress.co.jp/docs/column/hot/167922.html

HDDのATA8-ACS規格について色々調べてみる - ぼくんちのTV 別館
https://freesoft.tvbok.com/tips/hdd_ssd/hdd_ata8-acs.html

2024/04 現在、ACS, ACS-2, ACS-3, ACS-4, ACS-5 の仕様が出版されています。

Standards - Published | Technical Committee T13 AT Attachment
https://www.t13.org/standards-published

INCITS: INCITS 558-2021 - Information technology - ATA Command Set - 5 (ACS-5)
https://standards.incits.org/apps/group_public/project/details.php?project_id=2006

  • ACS-2

SATA-III 6Gb/s SSD220
https://jp.transcend-info.com/Products/No-735

  • ACS-3

CSSD-S6i256HG7V:CFD Intel®製3DNAND採用SSD 256GB | CFD販売株式会社 CFD Sales INC.
https://web.archive.org/web/20220521181823/https://www.cfd.co.jp/product/ssd/cssd-s6i256hg7v/

  • ACS-4

Samsung 860 EVO MZ-76E250B - solid state drive - 250 GB - SATA 6Gb/s Overview - CNET
https://www.cnet.com/products/samsung-860-evo-mz-76e250b-solid-state-drive-250-gb-sata-6gb-s/

  • ACS-5

INCITS: INCITS 558-2021 - Information technology - ATA Command Set - 5 (ACS-5)
https://standards.incits.org/apps/group_public/project/details.php?project_id=2006

  • ACS-6(2024/04 現在、仕様策定中)

INCITS: INCITS 574-202x - Information Technology - ATA Command Set - 6 (ACS-6)
https://standards.incits.org/apps/group_public/project/details.php?project_id=3042

  • 省電力機能:LPM(Link Power Management)

忘却の彼方: SATA LPMって知ってますか?
http://marosama.blogspot.com/2010/01/sata-lpm.html

忘却の彼方: SATA LPMの設定方法
http://marosama.blogspot.com/2010/01/sata-lpm_22.html

忘却の彼方: Intel Driver V11.5以降のSATA LPMの設定
http://marosama.blogspot.com/2013/06/intel-driver-v115sata-lpm.html

  • 省電力機能:DEVSLP(Device Sleep)

忘却の彼方: DEVSLP(Device Sleep)機能とは
http://marosama.blogspot.com/2014/09/devslpdevice-sleep.html

  • M.2 SATA SSD

OS で特別に対応する必要もないと思われますので、このカテゴリの製品は省略します。

  • M.2 PCI Express AHCI SSD

SATA とは違うのですが、SATA で使われている AHCI コントローラを内蔵した M.2 PCI Express SSD という、NVM Express 普及までの過渡期に存在した製品があります。

【パワレポ連動企画】実測1GB/sec超! M.2 PCI Express x4接続のSSD「Samsung XP941」を試す ~システム起動は要注意 - PC Watch
https://pc.watch.impress.co.jp/docs/topic/dosv/651576.html

HDD 製品の例・仕様

  • SATA I

この世代の製品は、中古市場でも見かけなくなってきました。

  • SATA II

Samsung HM020GI 1. Specification Summary
https://manualsdump.com/en/manuals/samsung-hm020gi/168299/2

  • セクタサイズについて

Support policy for 4K sector hard drives - Windows Server | Microsoft Learn
https://learn.microsoft.com/en-us/troubleshoot/windows-server/backup-and-storage/support-policy-4k-sector-hard-drives

アドバンスド・フォーマット4Kセクター・ハードディスク・ドライブへの移行 | Seagate 日本
https://www.seagate.com/jp/ja/blog/advanced-format-4k-sector-hard-drives-master-ti/

HDDの512E、4Kセクター、AFT、非AFT、4Kネイティブ(4Kn)の違い - ぼくんちのTV 別館
https://freesoft.tvbok.com/tips/hdd_ssd/aft_and_4k-native.html

HDDのセクタサイズ~512セクタと4Kセクタ【パソコン購入術】
https://www.pasonisan.com/pc-storage/hdd-512-4ksector.html

  • 512 セクタ

Toshiba MK6034GSX Specs - CNET
https://www.cnet.com/products/toshiba-mk6034gsx-hard-drive-60-gb-sata-150-series/specs/

  • AFT(512e)

Toshiba MK3276GSX Specs - CNET
https://www.cnet.com/products/toshiba-mk3276gsx-hard-drive-320-gb-sata-300-series/specs/

MQ04AB*** Series | 東芝デバイス&ストレージ株式会社 | 日本
https://toshiba.semicon-storage.com/jp/product/storage-products/client-hdd/mq04abfxxx.html

  • 4K ネイティブ

Toshiba MG04ACA500A Specs - CNET
https://www.cnet.com/products/toshiba-mg04aca500a-hard-drive-5-tb-sata-6gb-s/specs/

MG04ACA**** シリーズ | 東芝デバイス&ストレージ株式会社 | 日本
https://toshiba.semicon-storage.com/jp/product/storage-products/enterprise-hdd/mg04acaxxxx.html

  • ACS

近年に発売された製品は ACS に対応していて、OS から HDD として認識できます。

  • AV ストリーミングコマンドセット

自作 OS では、利用する機会はないと思われますが、録画用途向けの仕様があるようです。

HDD が AV コマンド対応か調べたい: ひでのブログ
https://hidekyan.cocolog-nifty.com/blog/2016/04/hdd-av-665f.html

SMR HDD 製品の例

Seagate Mobile ST1000LM035 Specs - CNET
https://www.cnet.com/products/seagate-mobile-st1000lm035-hard-drive-1-tb-sata-6gb-s/specs/

SSHD 製品の例

Seagate Laptop Thin SSHD ST500LM000 Specs - CNET
https://www.cnet.com/products/seagate-laptop-thin-sshd-st500lm000-hybrid-hard-drive-500-gb-sata-6gb-s/specs/

eSATA 製品の例

eSATA は、SATA の外付け規格。2018 年 12 月現在でも製品を入手できますが、USB が高速化されたため、あまり使われなくなっている規格です。

玄人志向 | SATA3-PCIE-E2:Marvell社製 88SE9128搭載 eSATA インターフェースカード(PCI-Express x1接続)
https://web.archive.org/web/20210804083529/https://www.kuroutoshikou.com/product/interface/ata_sata/sata3-pcie-e2/

シンプルBOX2.5 USB3.0+eSATA SATA6G (CSS25EU3BK6G) ハードディスク(HDD)ケース - 株式会社センチュリー
http://www.century.co.jp/products/css25eu3bk6g.html

TK-ESATA-05【eSATAケーブル(0.5m)】eSATA3.0Gb/s対応ケーブル。0.5m。|サンワサプライ株式会社
https://www.sanwa.co.jp/product/syohin?code=TK-ESATA-05

ホットプラグ 製品の例

ホットプラグは、eSATA でしか使ったことがありませんが、リムーバブル SSD/HDD で使うなら以下のような製品で使えそうです。外部フロントベイの無い PC ケースでは使えません。

オウルテック 5.25インチベイ内蔵専用HDDケース
2.5インチ&3.5インチHDD各1台簡単増設 SATA接続 Windows8.1対応 ガチャポンパッダイレクト
ブラック OWL-IE5CB | オウルテック
https://web.archive.org/web/20200908033412/https://www.amazon.co.jp/%E3%82%AA%E3%82%A6%E3%83%AB%E3%83%86%E3%83%83%E3%82%AF-5-25%E3%82%A4%E3%83%B3%E3%83%81%E3%83%99%E3%82%A4%E5%86%85%E8%94%B5%E5%B0%82%E7%94%A8HDD%E3%82%B1%E3%83%BC%E3%82%B9-3-5%E3%82%A4%E3%83%B3%E3%83%81HDD%E5%90%841%E5%8F%B0%E7%B0%A1%E5%8D%98%E5%A2%97%E8%A8%AD-Windows8-1%E5%AF%BE%E5%BF%9C-OWL-IE5CB/dp/B00ZHK5KG2

SATA 増設 PCI Express カードでは、ホットプラグに対応していないものも多いので、利用には注意が必要です。また、ホットプラグについては、OS での対応も必要になると思います。

光学ドライブ

2018 年 12 月現在、OS のインストールを USB メモリから行うようになったり、音楽や映像がインターネット配信に移行するなどして、光学ドライブの需要が減っていることもあって、光学ドライブのないノート PC や、外部フロントベイの無い PC ケースが増えており、自作 OS で積極的に対応する理由はないと考えられます。

SATA Express

手元に SATA Express 対応マザーボードがあるのですが、これは SATA と PCI Express を合わせた信号をケーブル接続出来るもので、これの SATA に対応した製品が販売された実績を確認できませんでしたが、これの PCI Express に接続する USB 3.1 Gen 2 フロントパネルを取り付けて使っています。

ASCII.jp:WDがSATA Express接続の3.5インチHDDをCOMPUTEXで展示中|COMPUTEX TAIPEI 2014レポート
http://ascii.jp/elem/000/000/901/901630/

4Tバイトの「Caviar Black」をベースにしたSATA Express対応ハイブリッドドライブ最新版をWDが公開 - ITmedia PC USER
http://www.itmedia.co.jp/pcuser/articles/1501/08/news121.html

mSATA

mSATA と呼ばれている商品は詳しくないのですが、いくつかの規格があるようで、Mini-SATA などは SATA に含まれるのではないでしょうか。

ASCII.jp:mSATA SSDって、フツーのSSDとなにが違う? (1/3)|本命が続々登場!! mSATA SSDに大注目
http://ascii.jp/elem/000/000/772/772060/

フラッシュメモリカード規格 CFast

フラッシュメモリカードの CFast という規格で、SATA が採用されているようです。これは、PCI Express と NVM Express を採用した、後継の CFexpress 規格が出ています。

CFastって何?
https://web.archive.org/web/20230315175042/https://www.interface.co.jp/accessory/option_cfast.asp

コンパクトフラッシュ協会がCFexpress* 1.0仕様を発表 | Business Wire
https://www.businesswire.com/news/home/20170420005832/ja/

最大転送速度2GB/sを実現する次世代カード規格「CFexpress 1.0」発表 ~将来的に8GB/sを目論む - PC Watch
https://pc.watch.impress.co.jp/docs/news/1118275.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment