Kingfordは「高品質、短納期、小量の試作生産から量産まで」というお客様のニーズにお応えします
深セン市宝安区福海街福橋第三工業団地龍匯6号
+86-134108630859:00-18:00(月~土)
PCB設計
PCB設計
ハードウェア専門家の PCB 設計経験の共有
15Feb
Andy コメント件

ハードウェア専門家の PCB 設計経験の共有

ハードウェア専門家の PCB 設計経験の共有

1: コスト削減

現象 1: これらのプルアップ/プルダウン抵抗の抵抗がどれほど大きいかは問題ではありません。5K の整数を選択しましょう。

コメント: 市場には 5K の抵抗はありません。 最も近いのは 4.99K (精度 1%) で、次に 5.1K (精度 5%) です。 そのコストは 4.7K (精度 20%) の 4 倍と 2 倍です。 20% の精度の抵抗値は、1、1.5、2.2、3.3、4.7、および 6.8 (10 の整数倍を含む) のみです。 同様に、20% 精度の静電容量は上記の値しかありません。 他の値を選択すると、より高い精度を使用する必要があり、コストは数倍になりますが、メリットはありません。

現象2:パネルの表示灯は何色? 青は特別だと思うので選んでください

コメント: 赤、緑、黄、オレンジなどの他の色は、サイズに関係なく (5MM 未満)、数十年にわたって成熟しており、価格は一般的に 50 セント未満ですが、青は最近発明されたものです。 三、四年。 技術の成熟度と供給の安定性は劣りますが、価格は 4 ~ 5 倍高くなります。 現在、青色のインジケータライトは、ビデオ信号の表示など、他の色に置き換えることができない場合にのみ使用されます等。

現象3

コメント: 74XX のゲート回路はわずか数セントですが、CPLD は少なくとも数十ドルかかります (GAL/PAL はわずか数ドルですが、会社は推奨していません)。 コストが N 倍に増加しました。 また、生産、文書化、およびその他の作業に数回の作業が追加されます。

現象 4: システム要件が非常に高いため、MEM、CPUFPGA、その他すべてのチップで最速のものを選択する必要があります。

コメント: 高速システムでは、すべての部分が高速状態で動作するわけではありません。 デバイスの速度が 1 レベル上がるたびに、価格はほぼ 2 倍になります。 さらに、シグナル インテグリティにも大きな悪影響をもたらします。

現象 5: このボードの PCB 設計要件は高くないため、より細い線を使用して自動的にクロスします。

コメント: 自動配線は必然的により大きな PCB 領域を占有し、手動配線よりも何倍も多くのビアを生成します。 大量ロットの製品の中で、PCB メーカーがビジネス上の要因以外に価格を下げるために考慮する要因は、線幅とビアの数です。 それらはそれぞれPCBの歩留まりとドリルビットの消費に影響を与え、サプライヤーのコストを節約し、価格引き下げの理由を見つけます。

PCB

現象 6: プログラムが安定している限り、長いコードや効率の悪さは重要ではありません

コメント: CPU 速度とメモリ容量はお金で買えます。 コードを記述するときにプログラムの効率を改善するためにさらに数日を費やす場合、CPU 周波数とメモリ容量を削減することによって節約されるコストは、絶対に費用対効果が高くなります。 CPLD/FPGA の設計も同様です。

2: 低消費電力設計

現象 1: 当社のシステムは 220V で動作しているため、消費電力は気にしません。

コメント: 低消費電力設計は、電力を節約するだけでなく、電源モジュールと冷却システムのコストも削減します。 電流が減少すると、電磁放射と熱雑音の干渉も減少します。 デバイスの温度が下がると、それに応じてデバイスの寿命が長くなります (半導体デバイスの寿命は、動作温度が 10 ℃ 上昇するごとに半減します)。

現象 2: これらのバス信号が抵抗で引っ張られて安心する

コメント: 信号をプルアップおよびプルダウンする必要がある理由は多数ありますが、すべての信号をプルアップおよびダウンする必要があるわけではありません。 抵抗をプルアップおよびプルダウンして単純な入力信号をプルすると、電流は数十マイクロアンペア未満になります。 しかし、駆動信号を引き出すと、電流はミリアンペアレベルに達します. 今日のシステムは、多くの場合、32 ビットのアドレス データと、場合によっては 244/245 分離バスやその他の信号を使用します。 プルアップすると、数ワットの電力消費がこれらの抵抗器によって消費されます (これらのワットの電力消費を 1 キロワットあたり 80 セントの概念で扱わないでください)。

現象 3: CPU と FPGA のこれらの未使用の I/O ポートをどのように処理しますか? 最初に空にしてから

コメント: 未使用の I/O ポートがサスペンドされている場合、外部からのわずかな干渉が、繰り返し発振する入力信号になる可能性があります。 MOSデバイスの消費電力は、基本的にゲート回路の反転回数に依存します。 プルアップすると各ピンにもマイクロアンペアの電流が流れるので、出力にするのがベストです(もちろん、他の駆動信号を外部に接続することはできません)。

現象4:このFPGAはゲートがたくさん残っているので思う存分遊べる

コメント: FPGA の消費電力は、使用されるフリップフロップの数とフリップフロップの数に比例するため、同じタイプの FPGA の異なる回路の異なる時間の消費電力は 100 倍異なる場合があります。 フリップフロップの数を最小限に抑えることは、FPGA の消費電力を削減するための基本的な方法です。

現象5:これらの小さなチップの消費電力は非常に低いため、考慮する必要はありません

コメント: 内部がそれほど複雑でないチップの消費電力を決定することは困難です。 これは主にピンの電流によって決まります。 ABT16,244 は、負荷なしで 1 mA 未満しか消費しませんが、その指標は、各ピンが 60 mA の負荷を駆動できることです (数十オームの抵抗のマッチングなど)。 つまり、全負荷の最大消費電力は 60 * 16=960mA に達する可能性があります。 もちろん、電源電流が非常に大きいため、負荷に熱がかかります。

現象 6: メモリ内に非常に多くの制御信号があります。 このボードでは、OE 信号と WE 信号のみを使用する必要があります。 読み取り操作中にデータがはるかに高速に出力されるように、チップ選択を接地するだけです。

コメント: ほとんどのメモリの消費電力は、チップ選択が有効な場合 (OE と WE に関係なく)、チップ選択が無効な場合の 100 倍以上になります。 したがって、CS は可能な限りチップを制御するために使用する必要があり、その他の要件が満たされている場合は、チップ選択パルスの幅を可能な限り短くする必要があります。

現象 7: これらの信号がオーバーシュートするのはなぜですか? 相性が良ければ消せる

コメント: いくつかの特定の信号 (100BASE-T や CML など) を除いて、オーバーシュートがあります。 あまり大きくない限り、マッチングが最適でなくてもマッチングする必要はありません。 たとえば、TTL の出力インピーダンスは 50 オーム未満で、20 オームの場合もあります。 このような大きな整合抵抗も使用すると、電流が非常に大きくなり、消費電力が許容範囲を超え、信号振幅が小さすぎて使用できなくなります。 また、高出力レベルと低出力レベルの一般的な信号の出力インピーダンスは同じではなく、完全に一致させる方法はありません。 したがって、オーバーシュートが達成される限り、TTL、LVDS、422、およびその他の信号のマッチングは許容されます。

現象 8: 消費電力の削減はハードウェア担当者の問題であり、ソフトウェア担当者の問題ではありません

コメント: ハードは舞台ですが、ソフトは歌い手です。 バス上のほぼすべてのチップへのアクセスとすべての信号の反転は、ほとんどソフトウェアによって制御されます。 ソフトウェアが外部メモリへのアクセス数を減らすことができる場合 (より多くのレジスタ変数を使用する、より多くの内部 CACHE を使用するなど)。 消費電力の削減に大きく貢献します。

3: システム効率

現象 1: 100M のメイン周波数の CPU はデータの 70% しか処理できず、200M のメイン周波数の CPU は問題ありません。

コメント: システムの処理能力には、さまざまな要因が関係しています。 通信事業のボトルネックは、たいていメモリにあります。 いくらCPUが速くても、外部からのアクセスには役に立ちません。

現象 2: CPU がより大きな CACHE を使用する場合、より高速になるはずです

コメント: CACHE の増加が必ずしもシステム パフォーマンスの向上につながるわけではありません。 場合によっては、CACHE をオフにする方が CACHE を使用するよりも高速です。 その理由は、システム効率を向上させるために、CACHE に移動されたデータを何度も再利用する必要があるためです。 したがって、通信システムでは、通常、命令 CACHE のみが開かれ、データ CACHE が開かれたとしても、スタックなどの一部の記憶空間に限定されます。 同時に、キーコードループの長さやジャンプ範囲など、CACHEの容量やブロックサイズを考慮したプログラム設計が必要になります。 ループが CACHE より少し大きいだけで、それが繰り返されると、悲惨な結果になります。

現象 3: 非常に多くのタスクが中断または照会されていますか? 早く中断したほうがいい

コメント: 中断はリアルタイムですが、必ずしも高速ではありません。 タスクの中断が多すぎると、これが発生した直後にシステムがクラッシュします。 タスクの数が多いが頻繁にある場合、CPU は着信および発信割り込みのオーバーヘッドに多くのエネルギーを費やします。 システム効率が非常に低い。 クエリ方式を使用すると、効率が大幅に向上しますが、クエリがリアルタイム要件を満たさない場合があります。 したがって、最善の方法は、割り込みでクエリを実行することです。つまり、終了する前に、次の割り込みで蓄積されたすべてのタスクを終了します。

現象 4: メモリ インターフェイスのタイミングはメーカーのデフォルト設定であり、変更する必要はありません。

コメント: メモリ インターフェイスの BSP によって設定されるデフォルト値は、最も保守的なパラメーターに基づいています。 実際のアプリケーションでは、バスの動作頻度や待機時間などのパラメータを適切に調整する必要があります。 周波数を下げると、効率が向上する場合があります。 たとえば、RAM のアクセス サイクルが 70ns でバス周波数が 40M の場合、3 サイクルのアクセス タイム、つまり 75ns を設定できます。 バス周波数が 50M の場合、4 サイクルに設定する必要がありますが、実際のアクセス時間は 80ns まで遅くなります。

現象5:1つのCPUでは処理しきれない場合、2つの分散プロセッサを使用し、処理能力を2倍にできる

コメント: レンガを動かすには、2 人で作業する方が 1 人で作業する場合の 2 倍の効率が必要です。 塗装については、より多くの人が助けることができます。 複数の CPU の使用は、ビジネスをより深く理解した後にのみ決定できます。 2 つの CPU 間の調整のコストを最小限に抑えて、1+1 を 2 にできるだけ近づけ、決して 1 未満にならないようにする必要があります。

現象 6: この CPU には DMA モジュールが搭載されています。 それを使用してデータを移動するのは高速でなければなりません

コメント: 本当の DMA は、ハードウェアがバスをプリエンプトし、両端でデバイスを同時に開始し、サイクル内であちこちを読み取ります。 ただし、CPU に組み込まれている多くの DMA は単なるシミュレーションです。 各 DMA を開始する前に、多くの準備作業 (開始アドレスと長さの設定など) を行う必要があります。 送信中、多くの場合、最初に一時記憶域としてチップに読み込まれ、次に書き出されます。 つまり、データを 1 回移動するには 2 クロック サイクルが必要であり、ソフトウェアでデータを移動するよりも高速です (命令フェッチ、サイクル ホッピング、およびその他の追加作業はありません)。 ただし、一度に数バイトしか移動しない場合は、多くの準備作業を行う必要があり、一般に関数呼び出しも含まれるため、効率的ではありません。 したがって、この DMA は大きなデータ ブロックにのみ適用されます。

4: シグナルインテグリティ

現象 1: これらの信号はシミュレートされており、まったく問題ありません

コメント: シミュレーション モデルを実際のオブジェクトと同じにすることはできません。 モデルは言うまでもなく、異なるバッチで処理される実際のオブジェクトでさえ異なります。 また、実際の状況は大きく異なり、シミュレーションではすべての可能性、特にクロストークを列挙することはできません。 一度学んだ教訓は、特定の長さのボードのパケットは紛失しやすいということです。 最後の理由は、長さフィールドの値が 0xFF であることです。 このデータがバス上に現れると、隣接する WE 信号と干渉し、RAM への書き込みができなくなります。 他のデータも WE に干渉しますが、干渉は許容範囲内です。 ただし、8 ビット バスが同時に 0 から 1 になると、近くの信号が圧倒されます。 結論は、シミュレーション結果はあくまでも参考であり、十分なマージンを残す必要があるということです。

現象 2: 100M データ バスは高周波信号と見なす必要があります。 8Kのクロック信号周波数については問題ありません

コメント: 通常、データ バスの値は、制御信号またはクロック信号の特定のエッジによってサンプリングされます。 十分なセットアップ時間とホールド時間でエッジが維持される限り、この範囲外の干渉またはオーバーシュートは大きな影響を与えません (もちろん、オーバーシュートはチップが耐えられる最大電圧値を超えてはなりません)。 クロック信号の周波数がどれだけ低いか(実際、スペクトル範囲は非常に広い)、そのエッジが鍵であり、その単調性を保証する必要があり、ジャンプ時間が特定の範囲内にある必要があります。

現象3:デジタル信号なので当然エッジは急峻な方が良い

コメント: エッジが急峻であるほど、スペクトル範囲が広くなり、高周波部分のエネルギーが大きくなります。 周波数が高くなるほど、信号を放射しやすくなり (たとえば、マイクロ波無線は携帯電話に組み込むことができますが、長波無線は多くの国では製造できません)、他の信号と干渉しやすくなります。 回線の伝送品質が低下します。 そのため、低速チップを使える人は低速チップを使ってみてください。

現象 4: クリーンな電源を確保するには、デカップリング コンデンサは多い方がよい

コメント: 一般に、デカップリング コンデンサの数が多いほど電源は安定しますが、多すぎると、コストの無駄、配線の難しさ、インパルス電流の過大な電力などのマイナス要因もあります。 デカップリング コンデンサは、適切な容量を選択して配置することです。 一般的なチップのマニュアルには、デカップリング コンデンサの設計に関するリファレンスがあります。 マニュアルに従った方が良いです。

現象5:信号合わせが本当に面倒。 どうすればうまく合わせることができるでしょうか。

コメント: 一般的な原則として、ワイヤ上の信号の伝送時間がジャンプ時間を超えると、信号の反射が重要になります。 信号の反射は、ライン インピーダンスの不均一性によって発生します。 マッチングの目的はドライブ側、負荷側、伝送ラインのインピーダンスを近づけることですが、マッチングが良いかどうかは基板上の信号ラインのトポロジーに依存します。 分岐、ビア、コーナー、伝送線路上のコネクタ、および異なる位置とグランド ワイヤ間の距離の変化は、インピーダンスを変化させます。また、これらの要因により、反射波形は非常に複雑になり、マッチングが困難になります。 したがって、高速信号はポイントツーポイント方式のみを使用して、ビアやコーナーなどの問題を最小限に抑えます。 PCB組立、PCB設計、PCB加工メーカーがハードウェアマスターのPCB設計経験を紹介。

Gerberファイル、BOMファイル、および設計ファイルをアップロードするだけで、KINGFORDチームは24時間以内に完全な見積もりを提供します。