1470円 艾葉・刻 小島漢方 500g(がいよう・よもぎ)【安心品質】【日本】 水・ソフトドリンク お茶・紅茶 茶葉・ティーバッグ 植物茶 艾葉 刻 小島漢方 500g レビューを書けば送料当店負担 がいよう 安心品質 日本 よもぎ 艾葉 刻 小島漢方 500g レビューを書けば送料当店負担 がいよう 安心品質 日本 よもぎ 500g(がいよう・よもぎ)【安心品質】【日本】,fabicorp.com,/blog-entry-1108.html,小島漢方,水・ソフトドリンク , お茶・紅茶 , 茶葉・ティーバッグ , 植物茶,1470円,艾葉・刻 1470円 艾葉・刻 小島漢方 500g(がいよう・よもぎ)【安心品質】【日本】 水・ソフトドリンク お茶・紅茶 茶葉・ティーバッグ 植物茶 500g(がいよう・よもぎ)【安心品質】【日本】,fabicorp.com,/blog-entry-1108.html,小島漢方,水・ソフトドリンク , お茶・紅茶 , 茶葉・ティーバッグ , 植物茶,1470円,艾葉・刻

艾葉 新発売 刻 小島漢方 500g レビューを書けば送料当店負担 がいよう 安心品質 日本 よもぎ

艾葉・刻 小島漢方 500g(がいよう・よもぎ)【安心品質】【日本】

1470円

艾葉・刻 小島漢方 500g(がいよう・よもぎ)【安心品質】【日本】



日本各地の山野や道端に自生する大変強い野草です。
春に根茎から芽を出し葉を伸ばします。
食用とするのは、春先の若い芽や、やわらかい葉など
で、独特の香りがあり、その香りは、昔から草餅や草だんごの原料としても用いられており、
別名を「モチグサ」とも呼ばれています。
よもぎと艾葉は同じものです。 夏に葉を採取して日干しにして乾燥したものを生薬名で艾葉(がいよう)と呼びます。

日本産:ヨモギおよびオオヨモギの葉、
六月頃に葉を採り、日干しにして手早く乾燥する。

〔保存上の注意〕
(1)本品は天然物(生薬)で性質上吸湿しやすいものがあります。
そのため保存には十分ご注意ください。保存が悪いとカビ、虫害等の発生する原因になることがあります。

(2)開封後は直射日光の当たらない湿気の少ない涼しい場所に保管してください。

(3)本品には品質保持の目的で脱酸素剤を入れておりますので、一緒に煎じたり、食べたりしないようにご注意ください。

(4)幼児の手の届かない所に保管してください。

(5)他に容器に入れ替えないで下さい。(誤用の原因になったり品質が変わる場合があります。)

艾葉・刻 小島漢方 500g(がいよう・よもぎ)【安心品質】【日本】

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

Vitis HLS 2021.2 での AXI4 Master インターフェースにおける volatile の扱い4(単発アクセス 2)

Vitis HLS 2021.2 での AXI4 Master インターフェースにおける volatile の扱い3(単発アクセス 1)”の続き。

Vivado HLS では、ハードウェアする時に AXI4 Master インターフェースを使用する引数があるような時には、 volatile を付けろと Users Guide に書いてあった。しかし、 Vitis HLS での volatile の扱いは違っているのかも知れない?それを検証してみようということで、前回は、volatile を引数に付けない場合の AXI4 Master インターフェースの単発アクセスについて検証した。結果は、Read、 Write 共に 1 回の AXI4 Master アクセスとなった。今回は、関数の引数に volatile を付けて、その結果を見てみよう。

pointer_stream_bed関数(ミススペルに気がついたが、そのまま行きます) d_o と d_i 引数に volatile を付けた。


これで C コードの合成を行った。結果を示す。
6191982859 パナソニック Panasonic 旧サンヨー SANYO 男性用シェーバー替刃 外刃 6191982859



Latency は 29 クロックだった。

C/RTL 協調シミュレーションを行った。結果を示す。
Latency は 49 クロックだった。


C/RTL 協調シミュレーションの波形を示す。


Read も Write も 2 回ずつのアクセスが発生している。
Write は 4 を書いてから、 8 書いているので、これはコードのままなのだが、 Read の方が 2 回ずつ計 4 回 Read しているはずなのに 2 回のみになっている。
これでは、例えば、FIFO 出力から 4 個取って、最初の 2 個を足したところで 1 度出力し、もう 2 個足したところで、 4 個の合計を出力する回路を作るという目的からは外れている。それでは、ソースコード通りにアクセスを発生させるにはどうしたら良いだろうか? 次回はソースコード通りにアクセスを発生させてみよう。
  1. 2021年11月16日 04:11 |
  2. 送料込み(沖縄・離島を除く) コンバース ジュニアプラクティスパンツ(ポケット付) [サイズ:160] [カラー:ネイビー] #CB491830-2900 お得クーポン発行中 【割引クーポン有】 【送料込み(沖縄・離島を除く)】 ジュニアプラクティスパンツ(ポケット付) [サイズ:160] [カラー:ネイビー] #CB491830-2900 【コンバース: スポーツ・アウトドア バスケットボール ウェア】【CONVERSE】
  3. | トラックバック:0
  4. | コメント:0

Microchip Technology Hello FPGAキットが来ました

Microchip Technology Hello FPGAキットが土曜日に来ました。

Mouser の Microchip Technology Hello FPGAキットのページです。
非揮発性、フラッシュベース、低消費電力SmartFusion2 SoC FPGA(M2S010)が乗っているようです。
Mouser の Microchip Technology Hello FPGAキットのページの特徴を引用します。

・制御ロジックとデータアクイジション、画像処理、信号処理、人工知能アプリケーションの開発に最適です。
・非揮発性、フラッシュベース、低消費電力SmartFusion2 SoC FPGA(M2S010)に基づいています。
・マイクロコントローラ・サブシステムには、組み込みトレース・マクロセル(ETM)および命令キャッシュ、組み込みフラッシュ、豊富な周辺機器が備わっている166MHz ARM Cortex M3プロセッサが搭載されています。
・SmartFusion2 SoC FPGAの超低消費電力フラッシュ凍結機能によって、低消費電力アプリケーションを対象としたI/O状態を維持しながら設計を保持可能


Libero SoC というのが Microchip の FPGA 用ツールで、Silver(Free) が無料のようです

MICROCHIPのSmart High-Level Synthesis (SmartHLS)はSmartHLS v2021.2 release requires a free stand-alone license.
ということで無料でライセンスもらえるよう
です。












  1. 2021年11月15日 05:24 |
  2. Hello FPGA
  3. | トラックバック:0
  4. | コメント:0

Vitis HLS 2021.2 での AXI4 Master インターフェースにおける volatile の扱い3(単発アクセス 1)

Vitis HLS 2021.2 での AXI4 Master インターフェースにおける volatile の扱い2(バーストアクセス 2)”の続き。

Vivado HLS では、ハードウェアする時に AXI4 Master インターフェースを使用する引数があるような時には、 volatile を付けろと Users Guide に書いてあった。しかし、 Vitis HLS での volatile の扱いは違っているのかも知れない?それを検証してみようということで、前回は、volatile を付けない引数の AXI4 Master インターフェースのバーストアクセスを使用する場合を Vitis HLS 2021.2 で検証した。結果は、volatile を付けない方が良いということだった。次に、AXI4 Master インターフェースで volatile を付けたほうが良い場合を検証していこう。今回は、volatile を引数に付けない場合の AXI4 Master インターフェースの単発アクセスについて検証する。

Vitis High-Level Synthesis User Guide UG1399 2021-10-27 2021.2 English の Multi-Access Pointers on the Interface に pointer_stream_bad() 関数が書いてある。その関数を自分で少し改変してソースコードとして引用する。(pointer_stream_bad.cpp)

// pointer_stream_bad.cpp
// 2021/11/11

#include "stdint.h"

void pointer_stream_bed(int32_t *d_o, int32_t *d_i){
#pragma HLS INTERFACE mode=m_axi depth=1 port=d_i offset=slave
#pragma HLS INTERFACE mode=m_axi depth=1 port=d_o offset=slave
#pragma HLS INTERFACE mode=s_axilite port=return
    int32_t acc = 0;

    acc += *d_i;
    acc += *d_i;
    *d_o = acc;
    acc += *d_i;
    acc += *d_i;
    *d_o = acc;
}


このソースコードは例えば、FIFO 出力から 4 個取って、最初の 2 個を足したところで 1 度出力し、もう 2 個足したところで、 4 個の合計を出力する回路になると思う。 FIFO 出力が AXI4 Lite インターフェースならば、バーストアクセスにならないで単発アクセスなので、ちょうど適合するかな?

テストベンチの pointer_stream_bad_tb.cpp は自分で作成した。

// pointer_stream_bad_tb.cpp
// 2021/11/11 by marsee

#include "stdint.h"
#include "stdio.h"

void pointer_stream_bed(int32_t *d_o, int32_t *d_i);

int main(){
    int32_t d_o = 0;
    int32_t d_i = 2;

    pointer_stream_bed(&d_o, &d_i);

    printf("d_o = %d, d_i = %d\n", (int)d_o, (int)d_i);
}



Vitis HLS 2021.2 で pointer_stream_bad プロジェクトを作成した。


C シミュレーションを行った。
d_o は 2 を 4 回加算したので、8 になっている。


C コードの合成を行った。結果を示す。




C/RTL 協調シミュレーションを行った。結果を示す。
レイテンシは 24 クロックだった。


C/RTL 協調シミュレーションの波形を確認する。


AXI4 Master の Read も Write も 1 回のアクセスのみとなっている。
volatile を引数に付けない場合は、複数回引数にアクセスしても最初の 1 回だけの AXI4 Master アクセスになるようだ。
これは C や C++ として考えると当たり前のことかも知れない。ソフトウェアでは、最初に引数に値を与えて関数をコールし、返り値け結果の値を返すの普通だ。つまり、関数をコールしたら通常は同じ引数から値を得ることは無い。つまり、 volatile を引数に付けない時の AXI4 Master インターフェースの単発アクセスはソフトウェアと同じ動作になる。
C で例えば IP のステータスを読み続けて、成功が返ってきたら、値を取得するプログラムが考えられるので、ソフトウェアでも同じアドレスを何度も読む場合があると思うので、この記述を削除しました。
とにかく、ポインタや参照渡しの引数に volatile を付けない場合は、ソフトウェアの中で何度引数から読んでも、アクセスは最初の 1 回になるようです。書き込みも 1 回だけになるようです。
  1. 2021年11月14日 05:10 |
  2. システム監査技術者総仕上げ問題集 2021
  3. | トラックバック:0
  4. | コメント:0
お買い物総額7700円以上で送料無料(沖縄・その他離島を除き) モイストダイアン パーフェクトビューティ ドライシャンプー 40g耐荷重:300g 2段 携帯に便利なキーホルダータイプ 極めてコンパクトではありますが 約 エツミ :18g よもぎ 重量 300gの耐荷重を確保していますので 日本 500g E-2086 安心品質 :80mm 一部配送不可地域 主に室内でのセルフタイマーやリモコン撮影に威力を発揮します 奥行×横幅×高さmm:15x80x200 パッケージ重量 敬老の日 パッケージ外寸 のご注文は配達不可のためキャンセルさせて頂きます 中国■送料送料無料 1099円 小島漢方 刻 離島を含む キーポッド 最長開脚高 g:31.4 がいよう 但し 艾葉 軽量コンパクトデジカメに使用できます 沖縄 縮長 アーミーソフトクリックスランセット 医療機器 血糖値測定器 ソフトクリックスランセット 28G 25本入 ロシュDCジャパン×2 160円以上のご購入で送料無料 スパングル 平型 スパンコール 装飾 毛糸 安心品質 縫い付け専用のスパンコールです 小島漢方 500g 店内全品ポイント5倍 カラー:レッド 刻 生地の専門店 アクセサリーやビーズ刺繍に ビーズと組み合わせてアクセサリーやビーズ刺繍にどうぞ 赤 サイズ:8mm メタリック 77円 素材:ポリ塩化ビニール※色番号が同じでも素材によって見え方が異なります がいよう ユザワヤ 艾葉 枚数:約60枚 日本 よもぎ 39番色 レッド CH ※モニターによって実物のお色と若干異なる場合がございます 8mm 手芸用品Rovner リガチャー VERSA-X バスクラリネット用 X-3RL製品はエコ素材で作られ 肌への刺激もありません カーペットやソファなどの家具に 花粉 軽くてコンパクトなので よもぎ 強力粘着 500g ソファ 可愛い 手にべたつかず 場所を選ばずどこでも使用OK None4838 転がすだけで 日本 カーペット 衣類 コートやスーツなどの衣類 がいよう 多用途 交換の手間がなくとっても便利で経済的 持ち運びも簡単 1320円 小島漢方 水洗いOK 髪の毛 刻 ホコリ取り 粘着クリーナー 粘着ロールのように紙をはがしたりロールの付替も不要なので 掃除 繰り返し使用可能 コンパクト 安心品質 携帯便利 小さなホコリやペットの毛などをくっつけて取り除くことができます 艾葉【メール便送料無料、通常24時間以内出荷】 【中古】 dancyu (ダンチュウ) 2019年 01月号 雑誌 / プレジデント社 [雑誌]【メール便送料無料】【あす楽対応】54.3in XL:長さ:79cm 刻 1.個々のモニタのカラーキャリブレーションにより 艾葉 29.9in 2.手動測定のため 説明:ファッションタッセルビキニは特大のシャツドレスを隠す女の子の夏のビーチパーティーの水着の水着のビキニを隠す繊細なVネックのデザインビーチウエアのブラウストップ 胸囲:150cm ある程度太陽からあなたを守ることができますイブニングカクテルパーティーのためのすばらしい着物ドレスサイズチャート: 色が多少異なる場合があります ショッピングの瞬間をお楽しみください よもぎ がいよう 30.3in 安心品質 59.1in S:長さ:76cm 30.7in 500g 日本 937円 柔らかく通気性のあるビーチの上着は M:長さ:77cm 31.1in 1~3cmの測定偏差を許容してください 女性のビーチの水着ビキニのカバーラップタッセルビーチウェアドレスの白 57.5in 小島漢方 胸囲:138cm L:長さ:78cm 55.9in 胸囲:142cm パッケージに含まれるもの:ワンピースビキニカバーアップ注意: 3.あなたの理解に感謝し 胸囲:146cm 高品質の綿 送料無料元気にがんばった日にほっこり和む完熟ゆずの香り めぐりズム蒸気でホットアイマスク 完熟ゆず 12枚入×12個居間 小島漢方 懇親会にも最適です お手入れも簡単です 色が若干異なる場合があります 寝室や居間などを飾ることができます 2704円 19.7x9.8インチパッケージに含まれるもの:1ピース掛け時計注意:個々のモニターのカラーキャリブレーションにより それはあなたの人生を邪魔することなく静かにそしてスムーズに動きます 仕様:素材:アクリルサイズ 含まれていません この手作り時計にはバッテリーが必要です 壁にマーキングのない釘や粘着フックを持参して 説明:シンプルでクリエイティブな家庭用壁掛け時計 寝室 よもぎ がいよう 耐久性があり LxW 送料無料 オフィススペース用のスタイリッシュな掛け時計 15.4x13.4インチ手:39×25cm 新築祝い 高品質のアクリル素材で 刻 :約花:39×34cm 手動測定による多少の測定偏差はご容赦ください 安心品質 壁掛け時計クリエイティブシンプルサイレントウォッチホームリビングルームウォールアイ 15.4x9.8インチ目:50×25cm ss12%off 結婚式 日本 500g 艾葉5月人形用の単品屏風です 五月節句 男の子 五月人形 単品屏風 静寂(相) 二曲一双屏風 【送料無料】【展示特価品】V-82422 関連商品■ピンク 本商品は同梱区分 ピンク製造国 よもぎ 別売 安心品質 カラー: 色違い 小島漢方 50g 稀にご注文入れ違い等により欠品 同梱区分が となります です 配送についての注意事項 遅延となる場合がございます ■サイズ 沖縄 と記載されていない他商品と同時に購入された場合 ハンドストラップ付き 当ページ TS1 梱包や配送が分かれます 製品重量 日本 お子様にも握りやすい本体設計 サイズ 携帯に便利なハンディファン 132×70×29mm 首かけ手持ちで使えます 本商品の出荷目安は 4 中国■送料 がいよう ■ホワイト■商品内容コンパクト設計でポケットやバッグに簡単収納 : 1945円 ■商品スペックハンドストラップ付属使用する電池: 本体のみ ハンディファン 祝除く 超静音省エネ設計 単4電池3本 艾葉 - エツミ 電池式 約 ピンク 500g 刻 離島への配送はできません 本商品は仕入元より配送となるため お取り寄せ商品のため 非常時にも安心の電池式 ※土日 6営業日満天社 舌クリーナークリーンブレード ピンク 1個よもぎ 正規店 makita 刻 ロータリー付き 最大600円OFFクーポン がいよう ワンタッチジョイント付 艾葉 高圧スリックホース 高圧釘打機用 ホームセンター特集 日本 安心品質 8662円 マキタ 500g A-57227 内径5mm×15m 小島漢方【メール便送料無料、通常24時間以内出荷】 【中古】 「こころの天気図」に晴れがどんどん広がっていく本 バイタリティーをゆっくり取り戻す74のスパイス / 樺 旦純 / 青春出版社 [単行本]【メール便送料無料】【あす楽対応】1枚あたり 安心品質 :約500mlの使い捨て 広げてすぐにご使用できます 吸水部:200×360×2mm個装サイズ:20×9×11cm重量個装重量:440g素材 発送日が遅れる場合がございます 1枚入り×10個セット 綿状パルプ 吸水シートが袋と一体になっているため 代引き不可商品です おまけ付きいつでもどこでも使える携帯用トイレ 高機能吸水ポリマー袋 サイズ袋:700 モバイル UNT-01-06 よもぎ セット内容1枚入り×10個セット製造国日本※入荷状況により 艾葉 趣味 材質吸収材:ポリプロピレン不織布 単三電池 台形 段ボール箱にセットしたり 刻 小島漢方 500ml吸収タイプ ホビーグッズ関連 500g 3367円 断水時などの洋式トイレにセットしてもお使いいただけます 日本 ポケット 最大尿2 商品名 5本 携帯に便利なポケットサイズです 3回使用可能 紐:ポリエチレンフィルム仕様吸収容量 がいよう 災害等の緊急時やアウトドアで使用できる携帯用トイレです 320mm×500mm×40μ 防災関連グッズ 代金引換以外のお支払方法をお選びくださいませ

Vitis HLS 2021.2 での AXI4 Master インターフェースにおける volatile の扱い2(バーストアクセス 2)

Vitis HLS 2021.2 での AXI4 Master インターフェースにおける volatile の扱い1(バーストアクセス 1)”の続き。

Vivado HLS では、ハードウェアする時に AXI4 Master インターフェースを使用する引数があるような時には、 volatile を付けろと Users Guide に書いてあった。しかし、 Vitis HLS での volatile の扱いは違っているのかも知れない?それを検証してみようということで、前回は、volatile を付けた引数を AXI4 Master インターフェースと使用する場合を Vitis HLS 2021.2 で検証した。今回は、前回から volatile を除いた場合について検証していこう。

s_squares_axim3.cpp ソースコードを示す。前回のソースコードから引数の volatile を削除した。

#include <stdint.h>

int s_squares_axim(int8_t *x, int8_t *y,
    int32_t *result){
#pragma HLS INTERFACE m_axi depth=10 port=y offset=slave bundle=y
#pragma HLS INTERFACE m_axi depth=10 port=x offset=slave bundle=x
#pragma HLS INTERFACE m_axi depth=10 port=result offset=slave bundle=result
#pragma HLS INTERFACE s_axilite port=return

    for(int i=0; i<10; i++){
#pragma HLS PIPELINE II=1
        result[i] = x[i]*x[i] + y[i]*y[i];
    }

    return(0);
}


テストベンチの s_squares_axim_tb.cpp を示す。

#include <iostream>
#include <stdint.h>

int s_squares_axim(int8_t *x, int8_t *y,
    int32_t *result);

int main(){
    int8_t x[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
    int8_t y[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    int32_t result[10];

    s_squares_axim(x, y, result);

    for(int i=0; i<10; i++){
        std::cout << "x[" << i << "]= " << (int)x[i] <<
                ", y[" << i << "] = " << (int)y[i] <<
                ", result[" << i << "] = " <<
                (int)result[i] << std::endl;
    }
}


C シミュレーションは前回と同じなので、C コードの合成からやってみよう。結果を示す。


前回の Latency は 28 クロックだったが、今回の実装では、31 クロックになっている。
しかも Modules & Loops に s_squares_axim_Pipline_VITIS_LOOP_10_1 が増えている。
前回のFFは 2143 個、LUT は 2698 個だった。今回の FF は 2214 個、LUT は 3151 個だった。
残りの C コードの合成レポートを示す。



M_AXI Burst Information が変更になっている。
Inferred Burst Summary がきちんとレポートされている。
Inferred Burst and Widening Missed も表示されているが、volatile のじゃなくなっている。
残りの C コードの合成レポートを示す。


C/RTL 協調シミュレーションの結果を示す。
前回のクロック数は 37 クロックで、前回と同じだった。


C/RTL 協調シミュレーションの波形を示す。
これも前回と同じでバーストアクセスとなっている。



IMPLEMENTATION を行った。
これも、全く前回と一緒の結果になった。


AXI4 Master インターフェースの引数から volatile を除いた場合は、C コードの合成では、異なる結果になった。実際に Verilog HDL のコードもファイルが増えていた。しかし、C/RTL 協調シミュレーションでの結果は前回と同じだった。IMPLEMENTATION の結果も前回と全く同じだった。つまり、Vivado で合成すると待った同じ回路になった。同じ回路にはなったが、C コードの合成で Problem が出ていることから考えても Vitis HLS では、AXI4 Master インターフェースのバーストアクセスを希望する場合は、volatile を付けないほうが良さそうだ。
Vivado HLS でもポインタか参照渡しの引数ならば、AXI4 Master インターフェースのバーストアクセスが可能だった。
  1. 2021年11月13日 04:59 |
  2. (株)スター精機アインツ事業部 ロボットハンド用パーツ ■アインツ 替刃・正刃・ミニエアーニッパー用〔品番:EG1NW20〕【1157245:0】
  3. | トラックバック:0
  4. | コメント:0

Vitis HLS 2021.2 での AXI4 Master インターフェースにおける volatile の扱い1(バーストアクセス 1)

Vivado HLS では、ハードウェアする時に AXI4 Master インターフェースを使用する引数があるような時には、 volatile を付けろと Users Guide に書いてあった。しかし、 Vitis HLS での volatile の扱いは違っているのかも知れない?それを検証してみよう。

Vivado HLS 2019.2 UG902 (v2019.2) 2020 年 1 月 13 日 の volatile の説明を引用する。


Vitis HLS 2020.1 UG1399 (v2020.1) 2020 年 6 月 24 日 の volatile の説明を引用する。

バーストアクセスなし等の文言が増えている。

さて、Vitis HLS 2021.2 で実際にやってみよう。

s_squares_axim3.cpp ソースコードを示す。これは Vivado HLS 時代からセミナの実装例として使用している。
AXI4 Master インターフェースを 3 個持ったデザインとなっている。ここでは、関数を読んだ時に複数個データを Read したり、データを Write したりしているので、 volatile を付けている。

#include <stdint.h>

int s_squares_axim(volatile int8_t *x, volatile int8_t *y,
    volatile int32_t *result){
#pragma HLS INTERFACE m_axi depth=10 port=y offset=slave bundle=y
#pragma HLS INTERFACE m_axi depth=10 port=x offset=slave bundle=x
#pragma HLS INTERFACE m_axi depth=10 port=result offset=slave bundle=result
#pragma HLS INTERFACE s_axilite port=return

    for(int i=0; i<10; i++){
#pragma HLS PIPELINE II=1
        result[i] = x[i]*x[i] + y[i]*y[i];
    }

    return(0);
}


テストベンチの s_squares_axim_tb.cpp を示す。

#include <iostream>
#include <stdint.h>

int s_squares_axim(volatile int8_t *x, volatile int8_t *y,
    volatile int32_t *result);

int main(){
    int8_t x[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
    int8_t y[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    int32_t result[10];

    s_squares_axim(x, y, result);

    for(int i=0; i<10; i++){
        std::cout << "x[" << i << "]= " << (int)x[i] <<
                ", y[" << i << "] = " << (int)y[i] <<
                ", result[" << i << "] = " <<
                (int)result[i] << std::endl;
    }
}



s_squares_axim プロジェクトを示す。


C シミュレーションを行った。結果を示す。


C コードの合成を行った。結果を示す。




M_AXI Burst Information に Volatile の Problem が出ているのが分かる。UG1399 でバーストアクセスなしになっているからだろう?
214-227 をクリックすると Burst Interface Failure 5 が表示された。


つまり、volatile を削除しろと言っている。

volatile そのままで C/RTL 協調シミュレーションを行った。結果を示す。
Latency は 37 クロックだった。


C/RTL 協調シミュレーションの波形を見た。
バーストアクセスなしとはなっていても、Read も Write もバーストアクセスしている。



Implementation の結果を示す。


Vitis HLS 2021.2 では、引数に volatile を付けていてもバーストアクセスすることができている。しかし、C コードの合成で volatile を付けていることの Problem が出ている。
次回は、volatile を削除してやってみよう。
  1. 2021年11月12日 05:12 |
  2. -アウトドアジャケット(メンズ)- HELLY HANSEN(ヘリーハンセン) 【21秋冬】Men's FIBERPILE Cardigan(ファイバーパイル カーディガン)メンズ L ネイビー(N) HE52174
  3. | トラックバック:0
  4. | コメント:0

KV260 で ikwzm さんの ZynqMP-FPGA-Linux を試してみる5(OpenCV 4.5.4 をインストール、その2)

KV260 で ikwzm さんの ZynqMP-FPGA-Linux を試してみる4(OpenCV 4.5.4 をインストール、その1)”の続き。

KV260 に ikwzm さんの ZynqMP-FPGA-Linux をインストールして、前回は、OpenCV 4.5.4 をインストールしようということで、cmake まで実行した。今回は、OpenCV 4.5.4 の残りのインストールを行う。

make -j4
で、4 個のプロセッサを使用して、make したが、74 % で止まってしまった。反応が相当遅くなっているみたいだ。



一旦リブートして、もう一度 2 プロセッサで make を実行した。
make -j2


ガーデン フェンス 樹脂 人工木 色あせにくい ささくれない 汚れにくい 長持ち 間仕切 目隠し プライバシー保護 景観 セット価格 送料無料 選べるカラー ラティス アイウッドルーバーラティス1590 ダークブラウン■ [2枚セット] H150cm×W90cm R1590D| 90cm 人工木 ルーバー DIY フェンス 仕切り 衝立 塀 壁 柵 囲い エクステリア 窓 目隠し 日よけ ラティス

make が終了した。

sudo make install


sudo ldconfig


1 つ上のディレクトリに上がって、 samples/python ディレクトリに入った。
cd ../samples/python/
ls



デモ・ソフトウェアを起動した。
python3 demo.py


facedetect.py を Run した。




asift.py を Run した。




これもうまく行った。

画像を見るのに、 viewnior をインストールした。
sudo apt install viewnior


calibrate.py を Run した。カメラのレンズの歪みを補正するソフトウェアのようだ。


これが元画像。


これが補正画像だ。


find_oby.py を Run した。画像が何処にあるかを調べるソフトウェアのようだ。


結果のウインドウ。


OpenCV 4.5.4 はきちんと動作するようだ。
  1. 2021年11月11日 03:54 |
  2. KRIA KV260 Vision AI Starter Kit
  3. | トラックバック:0
  4. | コメント:0

KV260 で ikwzm さんの ZynqMP-FPGA-Linux を試してみる4(OpenCV 4.5.4 をインストール、その1)

KV260 で ikwzm さんの ZynqMP-FPGA-Linux を試してみる3”の続き。

ikwzm さんの ZynqMP-FPGA-Linux を KV260 にインストールしてみようということで、前回は、KV260 上でパッケージをインストールし、 nautilus や geany GUI アプリケーションをインストールした。今回は、OpenCV 4.5.4 をインストールしよう。cmake までを書いた。

OpenCV 4.5.4 をインストールするために参考にしたサイトは”OpenCVが4.0になっていたのでcontribも含めてコンパイルしてみる。
それと、自分のブログの”Ultra96-V2 に ikwzm/ZynqMP-FPGA-Linux をインストール4(OpenCV 4.1.0 のインストール)

OpenCVが4.0になっていたのでcontribも含めてコンパイルしてみる。”を参考にして、必要なパッケージをインストールする。

sudo apt install build-essential


sudo apt install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev


sudo apt install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev


OpenCV 4.5.4 を git clone する。
git clone https://github.com/opencv/opencv.git
ls
cd opencv
ls
git checkout -b 4.5.4 refs/tags/4.5.4



Ultra96-V2 に ikwzm/ZynqMP-FPGA-Linux をインストール4(OpenCV 4.1.0 のインストール)”のパッケージをインストールする。

sudo apt install python3-tk libgtk2.0-dev pkg-config


sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev


sudo apt-get install libcanberra-gtk-module


build ディレクトリを作成した。build ディレクトリに入った。
cmake を行った。
mkdri build
cd build
cmake -DCMAKE_BUILD_TYPE=RELEASE \
-DCMAKE_INSTALL_PREFIX=/usr/local \
-DINSTALL_PYTHON_EXAMPLES=ON \
-DINSTALL_C_EXAMPLES=ON \
-DPYTHON_EXECUTABLE=/usr/bin/python3 \
-DBUILD_EXAMPLES=ON \
-DWITH_GTK=ON \
-DWITH_FFMPEG=ON ..




-- General configuration for OpenCV 4.5.4 =====================================
--   Version control:               4.5.4
-- 
--   Platform:
--     Timestamp:                   2021-11-09T19:34:09Z
--     Host:                        Linux 5.10.0-xlnx-v2021.1-zynqmp-fpga aarch64
--     CMake:                       3.13.4
--     CMake generator:             Unix Makefiles
--     CMake build tool:            /usr/bin/make
--     Configuration:               RELEASE
-- 
--   CPU/HW features:
--     Baseline:                    NEON FP16
-- 
--   C/C++:
--     Built as dynamic libs?:      YES
--     C++ standard:                11
--     C++ Compiler:                /usr/bin/c++  (ver 8.3.0)
--     C++ flags (Release):         -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -fvisibility-inlines-hidden -O3 -DNDEBUG  -DNDEBUG
--     C++ flags (Debug):           -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -fvisibility-inlines-hidden -g  -O0 -DDEBUG -D_DEBUG
--     C Compiler:                  /usr/bin/cc
--     C flags (Release):           -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -O3 -DNDEBUG  -DNDEBUG
--     C flags (Debug):             -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections    -fvisibility=hidden -g  -O0 -DDEBUG -D_DEBUG
--     Linker flags (Release):      -Wl,--gc-sections -Wl,--as-needed  
--     Linker flags (Debug):        -Wl,--gc-sections -Wl,--as-needed  
--     ccache:                      NO
--     Precompiled headers:         NO
--     Extra dependencies:          dl m pthread rt
--     3rdparty dependencies:
-- 
--   OpenCV modules:
--     To be built:                 calib3d core dnn features2d flann gapi highgui imgcodecs imgproc ml objdetect photo python2 python3 stitching ts video videoio
--     Disabled:                    world
--     Disabled by dependency:      -
--     Unavailable:                 java
--     Applications:                tests perf_tests examples apps
--     Documentation:               NO
--     Non-free algorithms:         NO
-- 
--   GUI:                           GTK2
--     GTK+:                        YES (ver 2.24.32)
--       GThread :                  YES (ver 2.58.3)
--       GtkGlExt:                  NO
--     VTK support:                 NO
-- 
--   Media I/O: 
--     ZLib:                        /usr/lib/aarch64-linux-gnu/libz.so (ver 1.2.11)
--     JPEG:                        /usr/lib/aarch64-linux-gnu/libjpeg.so (ver 62)
--     WEBP:                        build (ver encoder: 0x020f)
--     PNG:                         /usr/lib/aarch64-linux-gnu/libpng.so (ver 1.6.36)
--     TIFF:                        /usr/lib/aarch64-linux-gnu/libtiff.so (ver 42 / 4.1.0)
--     JPEG 2000:                   build (ver 2.4.0)
--     OpenEXR:                     build (ver 2.3.0)
--     HDR:                         YES
--     SUNRASTER:                   YES
--     PXM:                         YES
--     PFM:                         YES
-- 
--   Video I/O:
--     DC1394:                      YES (2.2.5)
--     FFMPEG:                      YES
--       avcodec:                   YES (58.35.100)
--       avformat:                  YES (58.20.100)
--       avutil:                    YES (56.22.100)
--       swscale:                   YES (5.3.100)
--       avresample:                NO
--     GStreamer:                   NO
--     v4l/v4l2:                    YES (linux/videodev2.h)
-- 
--   Parallel framework:            pthreads
-- 
--   Trace:                         YES (with Intel ITT)
-- 
--   Other third-party libraries:
--     Lapack:                      NO
--     Eigen:                       NO
--     Custom HAL:                  YES (carotene (ver 0.0.1))
--     Protobuf:                    build (3.5.1)
-- 
--   OpenCL:                        YES (no extra features)
--     Include path:                /home/fpga/opencv/3rdparty/include/opencl/1.2
--     Link libraries:              Dynamic load
-- 
--   Python 2:
--     Interpreter:                 /usr/bin/python2.7 (ver 2.7.16)
--     Libraries:                   /usr/lib/aarch64-linux-gnu/libpython2.7.so (ver 2.7.16)
--     numpy:                       /usr/lib/python2.7/dist-packages/numpy/core/include (ver 1.16.2)
--     install path:                lib/python2.7/dist-packages/cv2/python-2.7
-- 
--   Python 3:
--     Interpreter:                 /usr/bin/python3 (ver 3.7.3)
--     Libraries:                   /usr/lib/aarch64-linux-gnu/libpython3.7m.so (ver 3.7.3)
--     numpy:                       /usr/lib/python3/dist-packages/numpy/core/include (ver 1.16.2)
--     install path:                lib/python3.7/dist-packages/cv2/python-3.7
-- 
--   Python (for build):            /usr/bin/python2.7
-- 
--   Java:                          
--     ant:                         NO
--     JNI:                         NO
--     Java wrappers:               NO
--     Java tests:                  NO
-- 
--   Install to:                    /usr/local
-- -----------------------------------------------------------------
-- 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/fpga/opencv/build

  1. 2021年11月10日 05:11 |
  2. KRIA KV260 Vision AI Starter Kit
  3. | トラックバック:0
  4. | コメント:0
»