問題タブ [synthesis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
2273 参照

c# - C# で和音を鳴らしますか?

Console.Beep() を低いミリ秒レートで使用してみましたが、2 つの周波数が「同時に」再生されますが、ビープ音の間の一時停止がそれを台無しにします。私はそれを調査しようとしましたが、私が探しているDirectSoundを除いて、何も見つけられず、どこから始めればよいかわかりません. 必要なのは、1 つのスピーカーから 2 つ以上の周波数を同時に再生するプログラムを C# で作成することだけです。

ありがとう。

0 投票する
3 に答える
22330 参照

audio - オーディオプログラミングを学びたい

私の高校では、基本的に学期ごとに自分で科目を学ぶクラスを受講することができます。「サウンドプログラミング」について学びたいと思っていたのですが、それが何なのかわからないことに気づきました。たとえば、シンセサイザーがどのように機能するか、コンピューターサイエンスでサウンドがどのように機能するかについて知りたいと思っています。構成部分ではなく、低レベルのコード部分に焦点を当てたいと思います。これは実行可能な主題ですか?これにまったく慣れていない人のための良いチュートリアルはありますか?私はC++を知っており、Windowsを使用しています。これの最初の答えは私が興味を持っているものです(それは私の頭の上にありますが)。

0 投票する
1 に答える
189 参照

arrays - 配列の配列インデックスを広くする

VHDL で配列にアクセスすると、次の問題が発生します。

サイズ 2^n ではない、たとえばサイズ 6 の配列があるとします。次に、幅 3 ビット (=ceil(log2(6))) のインデックスを使用してこの配列にアクセスする場合は、明らかです。このインデックスは 7 と 8 の 2 つの位置に到達できるため、アクセスしている配列のサイズを超えています。この場合、Xilinx ISE で警告が表示されます。

これについてどうすればよいですか?私の可能な解決策は次のとおりです。

1.) 警告を無視します。ホープ合成は賢い。

2.) サイズ 2^n の配列のみを使用します。配列の未使用部分が最適化されることを願っています。

0 投票する
5 に答える
24665 参照

integer - VHDL:整数のビット幅/長さを検出/報告しますか(vs. std_logic_vector)?

0から5までの数字を表す信号が必要だとします。明らかに、これを表すには3ビットのstd_logicが必要です(つまり、MAXVAL = 5の場合、bitwidth = { wcalc "floor(logtwo($MAXVAL))+1"})。

私は私ができることを知っています:

これを使用して、3つのstd_logic'ビット'の配列を明示的に指定し、初期値を設定します。次に、REPORTを使用して長さ(この場合は3)を出力できます。

ここまでは順調ですね。しかし、代わりに整数(数値)型を使用するとします。

ここで、「コンパイラ」(「シンセサイザー」)は、この整数の範囲が0〜5であるため、3ビットのストレージ長が必要であると自動的に推測すると推測しています。その場合、私の質問は次のとおりです。 REPORTでこのビット幅/長さ/サイズをどうにかして印刷することは可能ですか?

秘訣は、もちろん、次のようなものです。

...失敗します(たとえば、「HDLParsers:3389-属性の長さのプレフィックスは配列オブジェクトである必要があります」)。私が収集する限り、これらの属性はすべて配列VHDL属性の理解)のよう'lengthに、配列'rangeにのみ適用できるためです。一方、整数(自然)は配列ではありません-それは数値です:)(VHDLベクトル整数変換の質問

繰り返しになりますが、log2(符号なし変数の幅を最大値から計算しますか? )を利用できる可能性があることは承知していますが、必要なのは、(合成中に)「ビット」「シンセサイザー」の数をすばやく確認することです。最終的に合成されたデザインに割り当てられるため、最終的なFPGAリソースの観点から使用されるおおよその量(特に「ジェネリック」を使用して整数の特定の最大値を計算する場合)。

さて、よろしくお願いします。

編集:少しコンテキスト:私はISEWebpack9.2を使用しています。'generic'変数/定数をパラメーターとして使用し、方程式を使用してカウンターの最大値を計算しようとしています。この計算は、「コンパイル」時に行われると思います(「ImplementDesign」ではなく「Synthesize」になります)。したがって、ここでレポートメッセージを発生させます(実際、このように取得しました。 std_logic_vectorの場合、合成ログにありますが、動作シミュレーションの開始時にも同じレポートメッセージが表示されます。これは問題ありません)。

そして、これらのレポートメッセージの目的は、私の方程式が正しいことと、シンセサイザーが32ビットカウンターを推測しようとしないことの両方を確認することです-たとえ0から5までを数えたいとしても:)

0 投票する
2 に答える
4027 参照

verilog - 単純なALUを実装できません

Verilogで説明されている基本的な8ビットALUがあります。デザインを実装しようとしていますが、エラーメッセージが表示されます。

エラー:NgdBuild:809-出力パッドネット「商<1>」に不正な負荷があります:タイプLUT6のブロックMmux_opcode[2]_GND_1_o_wide_mux_8_OUT81のピンI3

デザインは、次の演算、加算、減算、乗算、除算、AND、OR、XOR、およびXNORを実行します。興味深いのは、ザイリンクスXSTは、被除数を2倍(基本的に右にシフト)で除算しない限り、分周器を合成できないという事実です。そのため、これを処理するために、ザイリンクスコアジェネレーターによって生成されたCOREIPコンポーネントを使用しました。単一のクロックを受け取り(クロックイネーブルまたは同期クリアなしで、約20クロックサイクル後に正しい商と剰余を出力します。コア自体は、Core Generatorプログラムの数学関数の下にあります。とにかく、私のコードは次のとおりです。

明らかに私のコードはひどく、私のコメントはおそらく間違っていますが、私はVerilogの初心者にすぎません。ただし、このコードを大幅に改善し、練習用の操作を追加する予定です。モジュール自体は正常に合成およびシミュレーションできますが、FPGAに実装できません。コード、またはXilinx ISE(いつものようにバグでいっぱいです)、またはおそらくプロジェクト設定に問題があるかどうか誰かが知っていますか?

編集:回答によって提供されたアドバイスを反映するために、コードにいくつかの変更を加えました。

0 投票する
2 に答える
58000 参照

objective-c - @propertyと@synthesizeinobjective-c

https://github.com/enormego/EGOTableViewPullRefreshで遊んでいて、物事がどのように機能するかを理解しているときに、@propertyと@synthesizeの不思議なことに気づきました。これが私が言及したコードです

EGORefreshTableHeaderView.h

EGORefreshTableHeaderView.m

私はこのhttp://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjectiveC/Chapters/ocProperties.htmlを読みました。私が理解していることから、デリゲートである_delegateの新しい名前が作成されます。(私はこの理解で正しいですか?)

しかし、なぜそれらが@synthesize=ディレクティブで物事を複雑にしなければならないのか私はまだ理解していません。

0 投票する
2 に答える
6472 参照

objective-c - スーパークラスのプロパティをより具体的なタイプでオーバーライドするにはどうすればよいですか?

シナリオ
呼び出された基本クラスに、ヘッダーファイルで宣言されたAbstractRequestタイプのデリゲートプロパティがある状況があります。id <AbstractRequestDelegate>

抽象デリゲートプロトコルにはいくつかの必須メソッドが含まれており、「abstract」という単語で示されているように、AbstractRequestとは両方ともAbstractRequestDelegateサブクラス/拡張されることを目的としています。

この一例は、サブクラスConcreteRequestと拡張プロトコルConcreteRequestDelegatesで、どちらも抽象メソッドに追加のメソッドを追加します。目的は、抽象クラスメソッドと具象クラスメソッドの両方が、割り当てられた単一のデリゲートインスタンスにメッセージを送信できることです。

ある時点で、ConcreteRequestは、ConcreteRequestDelegateによって定義されたデリゲートのメソッドを呼び出したいと考えています。デリゲートのタイプはidであるため、コンパイラーはこのメソッドが実装されていない可能性があることを警告します。

ConcreteRequest.m:38:警告:プロパティ'delegate'にはメソッド'-delegate'を定義する必要があります-@synthesize、@ dynamicを使用するか、メソッドの実装を提供してください

問題
この警告は正当化されます。プロパティは結局のところに入力されているからid <AbstractRequestDelegate>です。これを修正するために、具象インスタンスに割り当てられたデリゲートはタイプでなければならないことをコンパイラーに明確にしたいと思いますid <ConcreteRequestDelegate>。これは私には完全に合理的に聞こえたので、抽象プロパティをオーバーライドすることを期待して、ConcreteRequestヘッダーに新しいプロパティを追加しました。

しかし、これはコンパイラが私に同意しないところです。おそらく正当な理由があります。スーパークラスのプロパティを間違ったタイプでオーバーライドすると警告が表示されると思いましたが、代わりに、この新しいプロパティを再合成する必要があります。スーパークラスのメソッドが同じデリゲートプロパティにアクセスできないため、そこには行きたくありません。

質問
追加された型情報を使用して、具象サブクラスのプロパティを「再宣言」する方法はありますか?それとも、私の考えの誤りを見つけることができますか?これは、私が今まで遭遇したことのないかなり一般的な問題である可能性がありますか?

乾杯、
EP。

PSこの作品に登場するすべてのクラス名とプロトコル名は架空のものです。オープンソースまたは特許取得済みの実際のクラス名およびプロトコル名との類似点は、まったくの偶然です。

0 投票する
4 に答える
335 参照

logic - 論理合成と検証のリソース

私は現在、論理合成に取り組んでいます-ハードウェアの高レベルの説明が与えられた場合、それをゲート、フリップフロップなどの回路に変換したいと考えています。私は理論にあまり精通していません。インターネットで検索しましたが、ほとんどがオンライン書店を参考にしています。

誰かがネット上の良いチュートリアルを紹介してくれませんか? それに関する助けをいただければ幸いです。

0 投票する
1 に答える
1673 参照

ios - Simultaneously generate multiple sine waves into sample buffer for audio unit (iOS)

Given an array (of changing length) of frequencies and amplitudes, can I generate a single audio buffer on a sample by sample basis that includes all the tones in the array? If not, what is the best way to generate multiple tones in a single audio unit? Have each note generate it's own buffer then sum those into an output buffer? Wouldn't that be the same thing as doing it all at once?

Working on an iOS app that generates notes from touches, considering using STK but don't want to have to send note off messages, would rather just generate sinusoidal tones for the notes I'm holding in an array. Each note actually needs to produce two sinusoids, with varying frequency and amplitude. One note may be playing the same frequency as a different note so a note off message at that frequency could cause problems. Eventually I want to manage amplitude (adsr) envelopes for each note outside of the audio unit. I also want response time to be as fast as possible so I'm willing to do some extra work/learning to keep the audio stuff as low level as I can.

I've been working with sine wave single tone generator examples. Tried essentially doubling one of these, something like:

Buffer[frame] = (sin(theta1) + sin(theta2))/2

Incrementing theta1/theta2 by frequency1/frequency2 over sample rate, (I realize this is not the most efficient calling sin() ) but get aliasing effects. I've yet to find an example with multiple frequencies or data sources other than reading audio from file.

Any suggestions/examples? I originally had each note generate its own audio unit, but that gave me too much latency from touch to note sounding (and seems inefficient too). I am newer to this level of programming than I am to digital audio in general, so please be gentle if I'm missing something obvious.

0 投票する
5 に答える
5443 参照

android - Androidで楽器の音を合成する方法(ピアノ、ドラム、ギターなど)

楽器(ピアノ、ドラム、ギターなど)の音を合成する方法を教えてもらえますか?

何を探すべきかさえわかりません。

ありがとう