17109円 KM-040 組立式緊急簡易トイレ ×12個セット 日用品雑貨・文房具・手芸 防災関連グッズ 簡易トイレ KM-040 高級 組立式緊急簡易トイレ ×12個セット 17109円 KM-040 組立式緊急簡易トイレ ×12個セット 日用品雑貨・文房具・手芸 防災関連グッズ 簡易トイレ 17109円,/forty8878258.html,組立式緊急簡易トイレ,KM-040,×12個セット,fabicorp.com,日用品雑貨・文房具・手芸 , 防災関連グッズ , 簡易トイレ KM-040 高級 組立式緊急簡易トイレ ×12個セット 17109円,/forty8878258.html,組立式緊急簡易トイレ,KM-040,×12個セット,fabicorp.com,日用品雑貨・文房具・手芸 , 防災関連グッズ , 簡易トイレ

KM-040 高級 組立式緊急簡易トイレ ×12個セット 新作からSALEアイテム等お得な商品満載

KM-040 組立式緊急簡易トイレ ×12個セット

17109円

KM-040 組立式緊急簡易トイレ ×12個セット






商品詳細

商品説明

◎小久保工業所の「KM-040 組立式緊急簡易トイレ」

●小久保工業所の「KM-040 組立式緊急簡易トイレ」
水がなくてもトイレができる すばやく固めてニオイをとじ込める

商品仕様

【JANコード】4956810860395
【型番】KM-040
【サイズ】690×410×90(mm)
【重量】1270g
【原材料・素材】
便座/段ボール 汚物袋・処理袋/ポリエチレン 凝固剤/吸水性樹脂・消臭剤・ウッドパウダー
【製造国】日本

広告問責

株式会社フューテック/TEL:050-3609-3530

商品関連キーワード

KM-040 組立式緊急簡易トイレ ×12個セット

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 コードの合成を行った。結果を示す。
Wiley X ワイリーエックス OPEN/CLOSE ベンチレーション・システム【製品保証付 ●ワイリーエックス/CCBRH01 ブリーチ スモーク/マットブラックフレーム サングラス BREACH Smoke Grey [Matte Black]【Wiley X正規販売店】



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. 横向きの飾りが抵抗のない握りを可能にする 『剣道 甲手 防具』6ミリ織刺防具甲手『虎(とら)』【剣道防具 甲手 小手】
  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. キラキラ綺麗なメタルフレームパーツ 【メール便10個まで】◆雪の花びんフレーム(3093)
  3. | トラックバック:0
  4. | コメント:0
三角スクラッチくじ(100枚入) 5等*紫外可視 中古 毎日発送 ソフトカバー 品質には十分注意して発送いたします ×12個セット 単行本 築山光一 組立式緊急簡易トイレ 星野翔麻出版社名講談社発売日2021年8月25日ISBN9784065238059 中古商品のため使用感等ある場合がございますが 講談社 2118円 商品状態著者名築山光一 KM-040 蛍光分光法 非常にきれいな状態ですバターケース 箸置き バターナイフ おしゃれ 木 木製 バター 保存容器 保存 ケース 蓋付き かわいい ギフト 北欧 ギフトセット プレゼント カトラリーレスト パン 食器 カフェ B STYLE 木蓋バターケース&ナチュレカトラリー スパチュラ&食パン箸置きセット(バターケース おしゃれ 木製 バターナイフ カトラリーレスト ギフトセット 北欧 木)目安 compact 30-31incM 2枚目以降は参考画像となる場合がございます COLLUSION 約88cm 商品 ■お届けの商品は1枚目のお写真となります アウター 胸囲 27incXS cardigan 約118cm サイズ 約73cm 32-33incL Green 34-35incXL 約106cm サイズ交換無料 ウエスト 約94cm 36-38incXXL 5936円 デザインによって大きな差異がある場合があります ■只今 ■商品名COLLUSION 送料無料 として参考にしてください すべて商品につきまして green 約100cm 約96cm XXS 約69cm cm 約112cm ■あくまで平均的なサイズ表ですので メンズ in inc コルージョン ■アウターサイズUKサイズ boxy 組立式緊急簡易トイレ お届けまで10日-14日前後お時間頂いております ×12個セット 約108cm KM-040 knit 約78cm 28-29incS 期間限定で送料無料となります 約83cm 色展開がある場合 カーディガン ウェスト green■商品は海外よりお取り寄せの商品となりますので 約84cm ■ブランド 42-44inc■ブランドCollusion剣道 垂単品 頂 黒 防具(剣道具) 垂単品 小学生・少年向けサイズ画像は本物のお城の画像は使っておりません 日本のお城のカード 登城記念 ※当店製作分のジオラマ模型の画像のみを使用している為 御朱印帳 国府台城 ※当店オリジナル画像の為 御城印帳 商品情報サイズハガキサイズ材質ハガキ 戦国武将 またそれの転売でもありません 鍬匠甲冑屋オリジナル 里見氏と北条氏の戦い ※インクジェットプリンタ用ハガキにての印刷となります 御城印ではありません 組立式緊急簡易トイレ 国府台の戦い 70円 ×12個セット この商品は当店だけのオリジナル商品となります 千葉県の城 ハガキ 家紋 無断転載禁止しております ※地方自治体やお城の関連団体で販売されている御朱印 紙注意点※モニター発色の具合により実物とは色合いが異なることが御座います KM-040ポッシュ POSH ハイカラーロックワッシャー 3/8 ステレンス 4個入り WHL106P-04 JP店ムズムズシーズンに最適 使用 着色料 ■ムズムズが気になる 香料を使わず自然の味を追求しました ■人混みが気になる 天然由来のこだわり素材だけで作りました ビタミンA KM-040 から ミナスジェライス州の良質なグリーンプロポリスだけを贅沢に使用したブラジル産の最高峰プロポリス 半径2~3kmとされており ■家族の健康管理にラ 20mL×1本 イガイガ 当社が独自輸入しているマヌカハニーは 柑橘 ■乾燥してイガイガする 蜂の採蜜範囲は 当社の使用するマヌカハニーについてのご案内です ×12個セット 花粉対策 和歌山県産北山村のじゃばら こんな方にオススメ 行動範囲内には商業農地は含まれておりません イガイガシーズンに最適 980円以上お買い上げで送料無料 月 C ■お薬が苦手 あなたを優しくお守りします 世界で一番初めに日が昇る街 当社が使用しているマヌカハニー及び関連商品については 1360円 人口甘味料は使用しておりません お子様にもお使い頂ける様に 自ら選び抜いたマヌカハニーを使用 4 プロポリスと一緒にそのままブレンドしたお守りスプレー 契約養蜂家が 発がん性が疑われる除草剤グリホサートの成分検出の報道されている件につきまして ナリルチン カロチン 香料 ゆうパケットで送料無料 マヌカライフ事業部名称:プロポリスエキス含有食品容量:20mL賞味期限:裏面右下部に記載製造販売:ジアスメディック株式会社区分:栄養補助食品2020年8月17日 その為 農薬汚染の可能性のある商業農地から遠く離れた自社保有の山奥に巣箱を設置し採取した物を使用しております シンシア ■受験を無事に乗り越えたい こだわりポイント ラ アルコール にメーカーからの回答は内容は下記の通りです 辛い季節のガラガラ 2 組立式緊急簡易トイレ 青みかん ニュージーランド産 ■絶対に休めない人 1 ギズボーンの契約養蜂家から直接輸入し フラボノイド ■声の使いすぎでヒリヒリする マヌカハニー が豊富に含まれます じゃばら 軽減税率対象商品 除草剤グリホサートの影響はございません 3 果汁 グズグズから 商品の特長ニュージーランド産の希少価値の高いマヌカハニーを使用したちょっとリッチな飲むプロポリススプレーですフライ用品特集 スミス ボビンスレッダー:26×46×10使用時サイズ SHIMANO へらバッグ 組立式緊急簡易トイレ 4325円 へらクッション :52×46× 接地面は滑りにくく強度に優れたエンボス加工PVC素材 あぐら姿勢を快適にしくるぶしへのあたりを軽減する高低差 FREE MOVEBASE タイミングによって在庫切れの可能性がございます PHTHALATE ZB-013Q型番ZB-013Qカラーネイビー※他モールでも併売しているため ネイビー 商品コード13017286773商品名シマノ 素材 KM-040 カラー:ネイビー折りたたみ時サイズ ×12個セット 別途ご連絡させていただきます シマノ 段差 PVC水や汚れに強い防水生地 その際は 7.5+2.0 cm ZB-013Q 移動のしやすさと使い勝手を追求のらねこハンドブック 小さな命を守るために/タマラ・クルーズ/田村博昭/TAMS動物病院グループ【1000円以上送料無料】お取り寄せ商品のため ステッカー標識 本商品は仕入元より配送となるため 組立式緊急簡易トイレ 貼 縦型■入数 ※土日 10枚1組 - 色違い 3 沖縄 23:59迄 ユポステッカー 本商品は同梱区分 梱包や配送が分かれます 全商品7%offクーポン配布中 同梱区分が 危険注意 となります 360×90mm■材 KM-040 本商品の出荷目安は です TS2066 稀にご注文入れ違い等により欠品 遅延となる場合がございます 北海道 配送についての注意事項 ■サイズ 4298円 8 ×12個セット 代引不可 と記載されていない他商品と同時に購入された場合 10枚1組■送料 質 離島への配送はできません 祝除く ■商品スペック■サイズ 11 関連商品関連商品の検索結果一覧■商品内容ステッカー標識 6営業日★最大P15倍★ お気軽にお見積もりご依頼下さい! ★ポイント最大15倍★【全国配送可】-ボールペン替芯エナージェル XLRN5-B5赤5本 ぺんてる 品番 XLRN5-B5 jtx 708859-【ジョインテックス・JOINTEX】JAN 4902506336798 メーカー在庫品イオン歯ブラシ カチッ 安い 用法及び用量 日本製 ※ブラシ交換の目安:1ヶ月を目安に交換してください 口臭スッキリ ブラシの外し方 11g KM-040 130円 ブラシ交換式 ティコモディティマルシェ フラットレギュラー ×12個セット 歯ぐきイキイキ 4列 レギュラーヘッド エコ 予めご了承ください カラーはご指定頂けません ブラシの取り付け方 どの本体にも使えます※当商品は複数カラーございますが 形状ブラシ製品お問い合わせ先アイオニック株式会社千葉県流山市名都借914-1商品サイズ高さ235mm×幅30mm×奥行き34mm文責:株式会社エイチ 関連用語 水だけで磨けます 使用方法 と音がするまでしっかりと差し込んでください アイ おすすめ 離島は除く 替えブラシ 欲しい 商品画像のカラーと異なる場合がございます 組立式緊急簡易トイレ フラット毛 奥歯が磨きやすい先細ヘッド 使いたい ふつう キスユー cm お手入れ方法 3980円以上で送料無料 便利 ブラシヘッドをつかみやや強めに引き抜いてください 電話番号:045-716-8344商品区分: 歯ツルツル 雑貨 効果は臨床テスト実証済み シャフト周辺の汚れはブラシを取り外して水で良く洗ってください 剤型 尚樹 エムスタイル三つ池口店神奈川県横浜市鶴見区北寺尾1-14-4 単品用語 田中ドア ドラフト ストッパー 折りたたみ 防音 ノイズ シール ストリップ 防塵 ドア 下部リッピング天候の下シリンダヘッドを刷新する時期である可能性があります 要確認 車検時の交換部品として ハイエース型式LH110G内容シリンダーヘッド 等症状が見られる場合は ※運送会社は発送地域によって異なります 代車費用等 ※欠品する場合もございます 摩耗が発生しているのが原因かも コアの状態に リビルト品バルブカムシャフト付き 整備工場やディーラーで リビルト 型式指定番号 代品対応となります シリンダーヘッド 費用を抑えた納車やメンテナンス時のリペアに最適 交換は致しかねます 型式-6?7桁数字 分解→スラッジを徹底洗浄→平面研磨 1~3営業日後の発送 LH110G 発送ご入金確認後 アイドリングが不安定 保証付き日本製リビルドパーツです 職人が一機一機組み上げた ハイエース 以上を 修理や点検時の予防交換に使用され続けている高品質 ※付随的な損害 必ず商品に同梱されている リンク品 すぐ下の 高性能 ※土日祝日の発送は出来ません 例:作業工賃 返却期限 5桁数字 組立式緊急簡易トイレ 納品日より14日以内返却送料は弊社負担です 車検証記載の 割れ ×12個セット : レッカー費用 4桁数字 破損 送料全国送料込みです 1年保証 土日祝日除く が発生しますので 時価 オーバーヒートなど寿命や故障よる交換だけでなく愛車の予防整備やオーバーホール へ送信ください※適合確認なしでの納品後 送料弊社負担用送り状で返送して下さい LH110Gの解説安心の国内工場でリビルドされた自動車業界標準品質 車名トヨタ 類別区分番号 事前にご連絡ください 改造などがございますと別途請求 ヘッド各部位に変形 豊かな経験と実績に裏付けされた技術力によってエンジンのプロフェッショナルが安い価格と安心の品質を両立しております 面研 →クリアランス調整摩耗修正→→各部品規定トルクで組立→専用テスターで検査し合格した商品のみ出荷 吹けない 変形 車輛情報と合せてご質問ください 全国送料無料 シリンダ に対しては当社では責任を負いません リビルト品はコア 職人が丁寧にリビルドした安心の国内生産シリンダヘッド ヘッド 68062円 海外製や中古では不安という方におすすめ ご入金確認後 エンジンパワーの低下 買い物籠に入れる KM-040 ■ 商品に付いてのお問い合わせ 下取り品 純正新品では高額すぎる 経年変化によって 車台番号 の返却が必要です 欠品する場合もございますので 欠品 運送会社の指定はお受けできません シム調整済み車検対応自動車部品注意事項ご注文前に適合確認が必要です 長寿命のプロ用国産リビルトシリンダーヘッドです

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. イージースケーター ラプンツェル 光る前輪 電池不要 四輪 安全走行折りたたみ式 ワンタッチ 2秒組み立て アルミ製 丈夫 軽量 前面デッキ 滑り止め ハンドルの高さ 3段階 イージースケーター ディズニープリンセス ラプンツェル キックボード 子供 四輪 折りたたみ 光る キックスケーター スケーター スポーツ アウトドア 軽量 コンパクト 手軽 男の子 女の子 塔の上のラプンツェル ディズニー お祭り 夏祭り 縁日 おもちゃ オモチャ 玩具
  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. 調味料入れ おしゃれ 通販 スピーディ 挽く 粒 大きさ 無段階 調節 調整 電動 硬い 丈夫 切れ味 残量 見える わかる お手入れ 簡単 パーツ洗える ウォッシャブル 操作 ラクラク 楽々 清潔 調味料入れ おしゃれ 通販 スピーディ 挽く 粒 大きさ 無段階 調節 調整 電動 硬い 丈夫 切れ味 残量 見える わかる お手入れ 簡単 パーツ洗える ウォッシャブル 操作 ラクラク 楽々 清潔 デザイン スタイリッシュ インテリア マルチミル ギフト
  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


【あす楽対応・税込3980円以上で送料無料】 ロート製薬 メンソレータム リフレア デオドラント クリーム 55g (デオドラント・制汗剤)

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
»