ルックアップテーブル【lookup table】LUT

概要

ルックアップテーブルとは、あらかじめ入力値と出力値の対応関係を表として保持し、計算の代わりに参照によって結果を得る仕組み。プログラム実行時の計算を省略し、高速化や処理の簡素化を図ることができる。
ルックアップテーブルのイメージ画像

数式や複雑な演算をその都度実行する代わりに、事前に計算済みの結果を配列や表形式のデータ構造に格納しておき、必要なときに該当する値を取り出す方式である。我々が九九を暗唱して一桁の掛け算をいちいち計算しないのと同じ原理である。結果を記録しておく記憶容量が余分にかかるものの、計算コストや処理時間を削減できる。主にリアルタイム性が求められる分野で利用されている。

例えば、三角関数や対数関数など計算量の多い数学関数の値をあらかじめ離散的な範囲で求めておき、入力値に応じて近い値を参照する方法がある。画像処理では、画素値の変換規則をテーブル化し、色補正やガンマ補正を高速に行う用途がある。デジタル回路では、FPGAなどで論理演算を実現する基本要素としてLUTが実装されている。入力信号の組み合わせに対する出力値を内部メモリに保持しておき、論理関数を柔軟に構成できる仕組みである。

ルックアップテーブルを実装する際には、メモリの使用量と精度のバランスに注意を払う必要がある。網羅的で詳細な表を用意すれば処理の精度は高まるが、その分だけ記憶領域を圧迫することになる。実務においては、限られたメモリ容量の中で、どの程度の細かさでデータを保持し、表にない中間値をどのように補間して算出するかといった設計上の工夫が重要となる。

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。