タグ

関連タグで絞り込む (3)

タグの絞り込みを解除

CPUに関するtanakaBoxのブックマーク (26)

  • Intelのさらなる“やらかし”と、Intelが主導するPCアーキテクチャの終わり

    Intelのさらなる“やらかし”と、Intelが主導するPCアーキテクチャの終わり:“PC”あるいは“Personal Computer”と呼ばれるもの、その変遷を辿る(1/3 ページ) 昔ながらのIBM PCPC/AT互換機からDOS/Vマシン、さらにはArmベースのWindows PC、M1 Mac、そしてラズパイまでがPCと呼ばれている昨今。その源流からたどっていく連載。第14回のトピックは、前回に引き続き、Intelのやらかしについて。 第1回:“PC”の定義は何か まずはIBM PC登場以前のお話から 第2回:「IBM PC」がやってきた エストリッジ、シュタゲ、そして互換機の台頭 第3回:PCから“IBM”が外れるまで 「IBM PC」からただの「PC」へ 第4回:EISAの出現とISAバスの確立 PC標準化への道 第5回:VL-Bus登場前夜 GUIの要求と高精細ビデオカー

    Intelのさらなる“やらかし”と、Intelが主導するPCアーキテクチャの終わり
  • CPUエミュレータをRustで自作する - Don't Repeat Yourself

    この記事は Rust Advent Calendar 2020 ならびに CyberAgent Developers Advent Calendar 25日目の記事です。 今年のはじめの頃になりますが、『CPUの創り方』というに載っている TD4 という CPU を実装してみました。TD4 は「とりあえず動作するだけの4bit CPU」の略です。このに載っている CPU エミュレータを実際に実装してみました。ただし、書には GUI が載っていましたが、それは省略しました。 CPUの創りかた 作者:渡波 郁発売日: 2003/10/01メディア: 単行(ソフトカバー) 「最近話題の RISC-V などの CPU エミュレータを作ってみたいものの、いきなり作るにはハードルが高い。何か簡単なもので素振りをして CPU の動作の仕組みをまずは知りたい」という方にはかなりオススメできる教材だ

    CPUエミュレータをRustで自作する - Don't Repeat Yourself
  • 74181のお話

    メインページに戻る はじめに ALUとは ALUとはCPUの中で加算や減算、あるいは論理和論理積等の回路を一つのパッケージに収めたものです。 ここではテキサスインスツルメンツ社が開発した74シリーズの中にラインアップされているALUに限定して話をします。 さて、ALUは略さずに書くとArithmetic Logic Unit となり、直訳すると「算術論理装置」となります。これを「算術演算をするための論理装置」と解釈するか「算術演算と論理演算をするための装置」と解釈すべきかは何とも言えません。しかし、一般に加算だけを行う回路を収めたパッケージはAdder、加減算だけを行う回路を収めたパッケージはAdder/Subtractor と呼ばれますので後者の方が正しい様に思えます。 ちなみに、乗算除算は加減算に比べ遥かに複雑な回路が必要ですので、74シリーズの中には乗除算機能をもつALUは存在しませ

    74181のお話
  • 25日目: 自作コンパイラ、自作エミュ、自作CPUの結合 - しかくいさんかく

    この記事はひとりでCPUとエミュレータとコンパイラを作る Advent Calendar 2017の25日目の記事です。 いよいよ最終日。 まず復習を兼ねて、今までの記事を振り返りながら、C言語から半導体までCPUの中を歩く。 最後に自作コンパイラ、自作エミュレータ、自作CPUを結合し、再帰関数でフィボナッチ数を計算する。 25日間の復習 アドベントカレンダーの 初日の記事 に 「普段目にする抽象的なプログラムコードから、CPU内の電圧変動が想像できるようになりたい。」 と書いたので、今までの記事を見返しつつ、C言語から半導体までレイヤーを降りてみる。 C言語からアセンブラまで (18日目-24日目) C言語のサンプルコード int main () { int a ; a = 3 ; return 0 ; } これを1週間かけてアセンブラに変換した。 作ったコンパイラのリポジトリはこれ。

    25日目: 自作コンパイラ、自作エミュ、自作CPUの結合 - しかくいさんかく
  • 東大のCPU実験で自作コア上の自作OS上で自作シェルを動かした話 - 旅する情報系大学院生

    東大の情報科学科では3年の秋学期にCPU実験という、自分たちでCPU、コンパイラ、シミュレーターを作ってレイトレーシングを動かすことが単位要件の名物実験があります。僕らの班では12月初旬に単位要件を満たすCPUは出来ていたので、2/20にあった成果報告会までの間にIwashi班という自作CPU上でlinuxを動かすことを目標とした余興班を作ってこのエントリのタイトルにあるような結果に終わったのでその報告をしたいと思います。 コンテキストスイッチしている画像: 目次 目次 対象とする読者 自己紹介 できたこととできなかったこと 技術的な詳細 ISA よかったところ 悪かったところ 結論 ステート管理 Floating point UART 自作OS/Shellの仕様 動機 やること 実装方針 増えるレジスタ 増える命令 MMUの挙動 タイマ割り込みの挙動 iretの挙動 Kernelの実装

    東大のCPU実験で自作コア上の自作OS上で自作シェルを動かした話 - 旅する情報系大学院生
    tanakaBox
    tanakaBox 2018/03/07
    えぇなぁ
  • weblog-tech.nagoya

    This domain may be for sale!

    weblog-tech.nagoya
  • 8086のバイナリが汚すぎる

    池袋バイナリ勉強会に参加して、8086の逆アセンブラーを作成しようとしているのだが、これが思いの外に難しい。いや、めんどくさい。 筆者は、これまでx86アセンブリには、ニーモニック経由でしか触れてこなかった。movはmovであり、それ以外の何者でもなかった。 mov ax, bx などと書いたら、これをアセンブラーにビット列に変換させて、その後は何も考えなかった。 既存のバイナリを逆アセンブラーにかけて読む場合でも、やはり逆アセンブラーがバイナリをニーモニックに変換してくれるので、やはりビット列による表現方法に関しては、考えたこともなかった。 さて、池袋バイナリ勉強会に参加したので、この機会に、逆アセンブラーでも実装しようと思い立った。そこで、Intelの当時の8086の資料を読んでみた。 Index of /Intel/x86/808x/datashts/8086 そして、絶望した。80

  • 【1カ月集中講座】 2014年最新CPUの成り立ちを知る 第2回 ~サーバー向けCPUはどうしてこうなった?

  • async/await不要論

    並列/並行基礎勉強会での発表資料です。 補足エントリもどうぞ。 http://bleis-tift.hatenablog.com/entry/asyncawaitdis

    async/await不要論
  • CPU黒歴史 大損失と貴重な教訓を生んだPentiumのバグ (1/3)

    今回のCPU歴史のネタは、安藤壽茂先生にも指摘された(関連リンク)「バグ付きPentium」の話である。何分18年前という古い話なので、ご存知ない方も多かろうと思う。そのため、まずは歴史的な経緯から説明したい。 NetNewsから火が付き あっという間に広がったFDIVバグの話題 18年前の1994年10月、米バージニア州リンチバーグ大学のThomas R.Nicely教授が、インテルに対して「Pentiumで非常に小さな値で割り算を行なうと、結果がおかしくなる」というレポートを送ったことに端を発する。インテルはこのエラーが起きたことは認めたものの、「そんな話はこれまでレポートされたことがない」と返答した。 そこで教授は、自身の送った内容とインテルからの返答を添えて、この問題が他のプロセッサー(486や他のPentium、あるいはPentium互換プロセッサー)でも発生するかどうか試して

    CPU黒歴史 大損失と貴重な教訓を生んだPentiumのバグ (1/3)
  • ハイパースレッディング・テクノロジー - Wikipedia

    この記事には複数の問題があります。改善やノートページでの議論にご協力ください。 出典がまったく示されていないか不十分です。内容に関する文献や情報源が必要です。(2017年12月) 出典は脚注などを用いて記述と関連付けてください。(2020年10月) 脚注による出典や参考文献の参照が不十分です。脚注を追加してください。(2020年10月) 出典検索?: "ハイパースレッディング・テクノロジー" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL ハイパースレッディング・テクノロジー (英: Hyper-Threading Technology、HTT) とは、インテルのハードウェアマルチスレッディング実装に対する同社の商標である。当初は、NetBurstマイクロアーキテクチャにおける同時マルチスレッディング

  • スクリプト言語の息の根を止めるのは案外 SSD かもな - kwatchの日記

    大変たいへん興味深い記事。全プログラマーにとって。 HDDの代わりにSSDを利用したら、リレーショナルデータベースの性能はどれだけ向上するのでしょうか? オラクルと富士通が共同検証を行い、その結果をホワイトペーパーとして先週発表しました ...(snip)... HDDは200スレッドで性能が頭打ちなのに対し、SSDは200スレッドから300スレッドになってもまだ性能は上昇。ただし、300スレッド時にはCPU利用率が100%に近づいており、先にCPU性能の方がボトルネックとなってしまったようです。 HDDをSSDにしたらデータベースはどれだけ速くなるか? オラクルと富士通が実験 - Publickey 動的なスクリプト言語 (RubyPython など) と静的なコンパイル型言語 (C++Java など) では、だいたい 5 倍から 10 倍ぐらいの速度差がある。それでもスクリ

    スクリプト言語の息の根を止めるのは案外 SSD かもな - kwatchの日記
  • SIMD演算 - MUGI COM

    C言語でSSEやSSE2を使う方法について。ポイントがいくつかあります。 xmmintrin.hやemmintrin.hをインクルードする SSE命令のみならxmmintrin.h、SSE2命令も使うならemmintrin.h SIMD命令でアクセスするメモリは16バイトアラインメントにする gccの場合、_mm_malloc関数を使えばよい。 MMX命令はAMDCPUでは使えない Pentium4以降に限定されますが、SSEやSSE2を使うのが良いでしょう。 これらを踏まえて、画像の各ピクセルのRGB値を反転させる例を示します。 各ピクセルは8bitのRGB値が並んでいるものとします。8bitの整数演算を行うので、8bit計算を16個並列で行うSSE2命令を使用します。 最初はSSE2のインクルードファイル。 #include <emmintrin.h> つづいて16バイトアラインメン

    SIMD演算 - MUGI COM
  • 基礎から学ぶOpenMP一覧

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    基礎から学ぶOpenMP一覧
  • http://pcjuornal.com/PCJ2/topics/Intel_i7.html

    tanakaBox
    tanakaBox 2009/12/31
    図解でわかりやすそう。
  • 頭脳対談2

    Intelと互換プロセッサとの戦いの歴史を振り返る (2017/6/28) Intelのx86が誕生して約40年たつという。x86プロセッサは、互換プロセッサとの戦いでもあった。その歴史を簡単に振り返ってみよう 第204回 人工知能FPGAに恋する理由 (2017/5/25) 最近、人工知能AI)のアクセラレータとしてFPGAを活用する動きがある。なぜCPUGPUに加えて、FPGA人工知能に活用されるのだろうか。その理由は? IoT実用化への号砲は鳴った (2017/4/27) スタートの号砲が鳴ったようだ。多くのベンダーからIoTを使った実証実験の発表が相次いでいる。あと半年もすれば、実用化へのゴールも見えてくるのだろうか? スパコンの新しい潮流は人工知能にあり? (2017/3/29) スパコン関連の発表が続いている。多くが「人工知能」をターゲットにしているようだ。人工知能向け

    tanakaBox
    tanakaBox 2009/12/14
    頭脳放談 ――プロセッサ・デザイン現場の舞台裏
  • Complete Artwork, Schematics, and Simulator for Intel MCS-4 (4004 family)

    After finishing the netlist comparison, I was motivated to simulate the extracted circuit to ensure correctness, and to see whether the whole circuit would behave same upon executing assembly code as described in the MCS-4 User Manual (PDF 29.4Mb). So I wrote a switch-level simulator. For easier testing, I gradually added more and more feature, and I replaced rough temporary solutions with more ma

    tanakaBox
    tanakaBox 2009/11/19
    intelが4004の資料を公開
  • x86系CPUのネイティブコードを解析する

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    x86系CPUのネイティブコードを解析する
    tanakaBox
    tanakaBox 2009/10/27
    おもろい。
  • Core i5/i7

    Intelの「Core i5/i7」は、同社として初めてメモリ・コントローラを内蔵するなど、大幅なアーキテクチャ変更が行われている。今回はその特徴などをまとめた。 連載目次 Intelのx86命令セットを採用するクアッドコア・プロセッサのブランド名。 Coreマイクロアーキテクチャの後継で、後述のようにメモリ・コントローラを内蔵するなどの大幅な改良が加えられた「Nehalem(ネハレム)マイクロアーキテクチャ」を採用する。Core i7はハイエンド向け製品、Core i5はメインストリーム向け製品となっている。Core i7では、1つのプロセッサ・コアで2つのスレッドが実行できるハイパースレッディングをサポートしている点が、Core i5との大きな違いとなる。ちなみに、Nehalemマイクロアーキテクチャを採用したサーバ向け製品はIntel Xeon 5500番台が提供されている。 200

    Core i5/i7
  • Windows における例外ハンドリングとか 64-bit プロセス固有のあれそれとか - NyaRuRuが地球にいたころ

    Windows における例外ハンドリング - @a4lg の準技術的日記 すごくまとまってました.個人的に印象深かったのはこの辺. 実は、x64 版 Windows 用のバイナリにおいては、fs:[0] に例外ハンドリング構造体へのポインタを設定するなどという行為は一切行いません。というより、コード上には、例外をハンドルする如何なる追加コードも存在しません。これは、例外ハンドリングを行わない場合のプログラムには一切オーバーヘッドが存在しないということを意味します。 Windows の細かい部分まで見てみると,64-bit プロセスのみ影響を受ける仕様というのがいくつかあって,今回のケースもそのひとつですかね.64-bit アプリケーションの場合,「従来から存在するバイナリ」というのが存在しないので,互換性に悩まされることなく 32-bit 時代の仕様をリセットできる,と. Windows

    Windows における例外ハンドリングとか 64-bit プロセス固有のあれそれとか - NyaRuRuが地球にいたころ