What is the "net slope"

3 ビュー (過去 30 日間)
MIN HOON
MIN HOON 2023 年 2 月 21 日
コメント済み: MIN HOON 2023 年 3 月 3 日
In matlab doc, there is only "handling net slope computation".
I want to know meaning of "net slope", not method of dealing with net slope like above I said.
So, let me know the "net slope" itself.
  2 件のコメント
John D'Errico
John D'Errico 2023 年 2 月 21 日
Where? In which MATLAB doc, since there are thousands of pages of MATLAB docs?
I can start looking now, but I expect it to be weeks before I have read EVERY page of EVERY MATLAB doc.
MIN HOON
MIN HOON 2023 年 2 月 21 日
When I type "net slope" at Matlab doc search blank to find out information about net slope, there is no knoweledge about net slope itself. There are just usages of it.

サインインしてコメントする。

採用された回答

Andy Bartlett
Andy Bartlett 2023 年 2 月 21 日
編集済み: Andy Bartlett 2023 年 2 月 21 日
Net slope is used in fixed-point operations to achieve agreement of scaling. The slopes of all the variables involved in an operation are combined into one multiplicative term called the net slope.
For example, multiply two variables with 10 bits to the right of the binary point and assign the product to a type with 12 bits to the right of the binary point.
The real world operation is
Vout = V1 * V2
The fixed-point scalings for these variables showing the slopes and stored integers are
Vout = (2^-12) * Qout
V1 = (2^-10) * Q1
V1 = (2^-10) * Q2
Via substitution we get
(2^-12) * Qout = (2^-10) * Q1 * (2^-10) * Q2
solving for the output stored integer and conslidating terms, we will see the Net Slope
Qout = (2^(-10-10+12)) * Q1 * Q2
NetSlope = 2^(-10-10+12) = 2^-8
In this case, the NetSlope can be perfectly represented in fixed-point. In fact, a simple shift right of 8 bits will efficiently achieve agreement of all the scalings.
The NetSlope gets more challenging when it is not an exact power of two.
Suppose the two inputs and the output had slopes of 6, 4, and 9 respectively. In that case, we have
NetSlope = (6*4)/9 = 8/3
To avoid costly division, this will get approximated with a fixed-point variable such as
format long g
fi(8/3,0,16)
ans =
2.66668701171875 DataTypeMode: Fixed-point: binary point scaling Signedness: Unsigned WordLength: 16 FractionLength: 14
The documentation of Rules of Arithmetic Operations gives more examples of computing net slopes
  4 件のコメント
MIN HOON
MIN HOON 2023 年 2 月 23 日
Oh.. my ... god!!!
Thank you so~~~ much!!!! Andy!
Certainly, expert is different from ordinary people...
I'm not a guy in english culture, so it's hard to understand hidden meaning of any word.
They, just like you, always give me clearly and perfectly resolve my problem!
Thank you~!
MIN HOON
MIN HOON 2023 年 3 月 3 日
Hello, Andy
I have one question in your example.
Why do we consider Qout instead of Vout?
Isn't Vout What we want to get finally?

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeDeployment, Integration, and Supported Hardware についてさらに検索

製品


リリース

R2015b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by