「BAR (Base Address Register)」の版間の差分
Administrator (トーク | 投稿記録) 編集の要約なし |
Administrator (トーク | 投稿記録) |
||
| (同じ利用者による、間の3版が非表示) | |||
| 1行目: | 1行目: | ||
'''Base Address Register''' (BAR)とは、[[PCI Express]] | '''Base Address Register''' (BAR)とは、[[PCI Express]]の機能のひとつで「PCI Expressカード(以下カード)上の[[メモリ]]をCPUのメモリ空間に割り当てられる([[メインメモリ]]を増設したように見える)」という機能です。 | ||
通常であればカード上のメモリにアクセスするにはCPUからカードごとの専用命令を経由して読み書きを行います。一方、BARを使うとCPUから普通のメインメモリと同じように読み書きできるようになります。専用命令が不要なのでメモリアクセスが高速化されます。 | 通常であればカード上のメモリにアクセスするにはCPUからカードごとの専用命令を経由して読み書きを行います。一方、BARを使うとCPUから普通のメインメモリと同じように読み書きできるようになります。専用命令が不要なのでメモリアクセスが高速化されます。 | ||
| 6行目: | 6行目: | ||
== 容量 == | == 容量 == | ||
なお、BARに割り当てられるメモリ容量の上限は[[CPU]]ごと(実際には[[チップセット]]ごと=[[マザーボード]]ごと)に[[仕様]]を持っています。[[MIPS]]系では32MB、[[ARM]]系では64MB、[[x86]]系では128MB、[[POWER]]系( | なお、BARに割り当てられるメモリ容量の上限は[[CPU]]ごと(実際には[[チップセット]]ごと=[[マザーボード]]ごと)に[[仕様]]を持っています。[[MIPS]]系では32MB、[[ARM]]系では64MB、[[x86]]系では128MB、[[POWER]]系([[PowerPC]]系)では64GBくらいが相場となっています。 | ||
[[ビデオカード]]は「[[x86]]系の128MB」を想定しているものが多く、[[Raspberry Pi]]などにビデオカードを接続しても動かないことが多いのは「[[ARM]] | [[ビデオカード]]は「[[x86]]系の128MB」を想定しているものが多く、[[Raspberry Pi]]などにビデオカードを接続しても動かないことが多いのは「[[ARM]]系の64MB」は想定されていないためです。 | ||
一方でPowerPCは太古の昔からBAR64GBが標準なのでPowerPCを搭載した古い家電製品にLinuxをぶち込んでRadeon HD(ドライバの関係で最新製品は難しいようです)を接続できるそうです。 | 一方でPowerPCは太古の昔からBAR64GBが標準なのでPowerPCを搭載した古い家電製品にLinuxをぶち込んでRadeon HD(ドライバの関係で最新製品は難しいようです)を接続できるそうです。 | ||
最新の[[インテル]]や[[AMD]]の製品では「[[Resizable BAR]]」などといって64ビット(理論上は約172億GB=全メモリ)を割り当てることができます。なお、[[Resizable BAR]]」はPCI Express 2.1からオプション(仕様はあるが実装しなくてもよい)として存在しました。 | 最新の[[インテル]]や[[AMD]]の製品では「[[Resizable BAR]]」などといって64ビット(理論上は約172億GB=全メモリ)を割り当てることができます。なお、[[Resizable BAR]]」はPCI Express 2.1からオプション(仕様はあるが実装しなくてもよい)として存在しました。 | ||
[[category: GPU]] | |||
[[category: CPU]] | |||